Skip to content

feat(cli): agent-native provisioning with init --agent and agents claim - #699

Closed
wondercreatemaster wants to merge 1 commit into
vouchdev:testfrom
wondercreatemaster:feat/agent-native-provisioning
Closed

feat(cli): agent-native provisioning with init --agent and agents claim#699
wondercreatemaster wants to merge 1 commit into
vouchdev:testfrom
wondercreatemaster:feat/agent-native-provisioning

Conversation

@wondercreatemaster

@wondercreatemaster wondercreatemaster commented Jul 31, 2026

Copy link
Copy Markdown

Summary

  • closes feat(cli): agent-native provisioning — vouch init --agent plus a claim handshake #606: vouch init --agent --agent-caller <name> provisions an agent-scoped KB, stamps agent.caller as the persistent proposer identity, and writes a local credential (chmod 0600) that is never echoed to stdout
  • emits a claim token / vouch agents claim <token> command (plus --json for skills); claiming from a project KB transfers ownership and adopts knowledge through the same review gate as vouch adopt, leaving the agent credential and agent-KB artifacts untouched
  • mcp/jsonl/cli fall back to the stamped agent.caller when VOUCH_AGENT is unset

Test plan

  • python -m pytest tests/test_agent_provision.py tests/test_adopt.py -q
  • python -m ruff check src tests
  • python -m mypy src
  • full pytest tests/ -q --ignore=tests/embeddings green locally
  • CI green on this PR
  • manual: vouch init --agent --agent-caller demo --json → credential path exists, stdout has no credential value → cd project && vouch init && vouch agents claim <token> binds and adopts

Closes vouchdev#606. Lets an agent provision its own KB and identity, keep a
local credential off stdout, and hand a human a claim token that binds
the agent to a project through the adopt review gate.
@github-actions github-actions Bot added docs documentation, specs, examples, and repo guidance cli command line interface mcp mcp, jsonl, and http surfaces tests tests and fixtures size: XL 1000 or more changed non-doc lines labels Jul 31, 2026
@plind-junior

Copy link
Copy Markdown
Member

flagging three things before a maintainer spends time on the +987 diff, because two of them are mechanical and one is scope.

CI is red — diff coverage (100% of changed python) is failing, and it is the gate this repo does not waive. worth getting green before review rather than after, since the fix usually moves lines around.

the file list has a gap that matters more than the coverage number: src/vouch/adopt.py is +83/-34 — a substantial rewrite of an existing, load-bearing module — and tests/test_adopt.py is not in the changed-files list at all. the test plan mentions running it, which is good, but running an unchanged test file against rewritten behaviour tells you the old paths still work, not that the new ownership-transfer path does. agents claim transferring ownership and adopting knowledge is the highest-risk thing in this PR and it currently rides on test_agent_provision.py only.

on scope: this introduces a credential file, a claim-token flow, an ownership-transfer path and a new persistent proposer identity, in one PR, alongside a rewrite of adopt. each of those is individually reviewable; together they are not, and the parts have different risk profiles — --agent-caller stamping a persistent proposer identity is a small change to how attribution works, while writing a chmod-0600 credential and transferring KB ownership is a security surface. splitting the credential/claim half from the provisioning half would let the cheap half land now.

last, minor but it is a house convention: the description carries a "Made with Cursor" trailer. this repo is explicit about not attaching AI-tool attribution to contributions — worth dropping it.

happy to review the substance properly once CI is green and the adopt changes have tests; nothing above is a judgement on the approach.

@wondercreatemaster

Copy link
Copy Markdown
Author

Superseded by a replacement PR that addresses the review notes on this one:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cli command line interface docs documentation, specs, examples, and repo guidance mcp mcp, jsonl, and http surfaces size: XL 1000 or more changed non-doc lines tests tests and fixtures

Projects

None yet

Development

Successfully merging this pull request may close these issues.

feat(cli): agent-native provisioning — vouch init --agent plus a claim handshake

2 participants