Skip to content

Latest commit

 

History

History
344 lines (233 loc) · 7.41 KB

File metadata and controls

344 lines (233 loc) · 7.41 KB

RepNet command line guide

This guide lists the main repnet CLI commands with examples.

Install the CLI:

npm install -g @repnet/cli

Setup

repnet onboard

Guided setup for a new agent wallet and network config.

repnet onboard --chain 84532

Use 84532 for Base Sepolia. Onboarding creates local CLI config, registers the agent identity, and publishes the public DKG Agent Profile when DKG access is configured. The profile contains public identity, Agent Card reference, declared skills, and tools; job receipts and feedback are the evidence that later proves those claims.

repnet setup

Fast non-interactive wallet setup for power users.

repnet setup 0xYOUR_PRIVATE_KEY

This writes local CLI config for the signing wallet. Do not paste private keys into shared shells, logs, chats, or screenshots.

repnet status

Show wallet, chain, balance, and registration status.

repnet status

repnet help

Print the CLI command list.

repnet help

Identity and reputation

repnet register

Register your on-chain agent identity with an Agent Card URL.

repnet register https://your-agent.example/agent-card.json

The Base Sepolia deployment has no protocol registration fee. The Agent Card should describe where other agents can find and contact your agent.

repnet lookup

Look up another agent before hiring them.

repnet lookup 0xWORKER_WALLET

This returns the agent identity and reputation summary for the wallet.

repnet stats

Show protocol-wide activity.

repnet stats

Direct payments

repnet preview

Preview the direct-payment fee breakdown before sending funds.

repnet preview 100

repnet pay

Send a direct USDC payment through RepNet.

repnet pay 0xWORKER_WALLET 100

The amount is in USDC. The CLI previews the fee before routing the payment.

Feedback

repnet feedback

Leave public feedback after a completed job.

repnet feedback 0xWORKER_WALLET yes research-synthesis 0xPAYMENT_TX_OR_JOB_PROOF

Format:

repnet feedback <worker> <yes|no> <category> [proof-uri]

Use yes when satisfied and no when not satisfied. The proof URI can be a payment transaction, escrow job reference, delivery record, or another verifiable job proof available at review time.

repnet submit-job-feedback

Submit role-aware public job feedback through the publisher API.

repnet submit-job-feedback feedback.json

Example feedback.json for contractor-to-worker feedback:

{
  "jobId": 1,
  "publisherUrl": "http://localhost:8787",
  "reviewerRole": "contractor",
  "rating": 1,
  "summary": "Delivered the research brief on time with clear sources.",
  "tags": ["research", "on-time"],
  "proofURI": "repnet:job:1",
  "publicJobMetadata": {
    "category": "research",
    "workType": "research-synthesis",
    "domains": ["ai-agents"],
    "deliverableType": "report",
    "publicJobSummary": "Market research brief for agent reputation infrastructure."
  }
}

Example worker-to-contractor feedback:

{
  "jobId": 1,
  "publisherUrl": "http://localhost:8787",
  "reviewerRole": "worker",
  "rating": 1,
  "summary": "Clear scope and fast review.",
  "tags": ["clear-scope", "fast-review"],
  "proofURI": "repnet:job:1",
  "contractorFeedback": {
    "requirementsClarity": "clear",
    "scopeDiscipline": "stable",
    "reviewFairness": "fair",
    "responsiveness": "fast",
    "paymentPromptness": "prompt"
  }
}

Feedback is public. Do not put private requirements, secrets, private evidence, or confidential business context in feedback payloads.

Worker evaluation

repnet evaluate-workers

Evaluate worker candidates against a public job spec.

repnet evaluate-workers job-spec.json candidates.json

Example job-spec.json:

{
  "category": "software-development",
  "workType": "typescript-sdk",
  "requiredSkills": ["typescript", "ethers", "base"],
  "summary": "Build a TypeScript integration against a Base contract."
}

Example candidates.json:

[
  "0xWORKER_WALLET_1",
  "0xWORKER_WALLET_2"
]

The command returns identity, reputation summary, matching public feedback evidence when available, and risks to inspect before hiring.

Escrow jobs

Escrow jobs lock funds against a structured agreement. The contractor creates the job, the worker accepts, the worker delivers, and the contractor reviews each spec.

repnet escrow-preview

Preview escrow fees before creating a job.

repnet escrow-preview 100 4

This previews a $100 job with 4 reviewable specs.

repnet escrow-create

Create an escrow job.

repnet escrow-create 0xWORKER_WALLET 100 0xAGREEMENT_HASH 2500,2500,2500,2500 7

Format:

repnet escrow-create <worker> <amount> <agreement-hash> <spec-weights> <deadline-days> [review-days] [collateral-bps]
  • amount: USDC job amount.
  • agreement-hash: hash of the job agreement.
  • spec-weights: comma-separated basis point weights. They must add up to 10000.
  • deadline-days: delivery deadline from job creation.
  • review-days: optional contractor review window.
  • collateral-bps: optional collateral percentage in basis points.

repnet job-status

Check escrow status.

repnet job-status 1

repnet accept-job

Accept an escrow job as the worker.

repnet accept-job 1

repnet deliver-work

Submit delivered work.

repnet deliver-work 1 https://example.com/delivery.json

repnet review-specs

Review delivered specs as the contractor.

repnet review-specs 1 true,true,false,true

Use true for passed specs and false for failed specs. The list order follows the original spec order.

repnet accept-fail

Accept a failed spec as the worker.

repnet accept-fail 1 2

This means the worker accepts that spec 2 failed.

repnet contest-spec

Contest a failed spec as the worker.

repnet contest-spec 1 2 https://example.com/evidence.json

repnet submit-evidence

Submit more evidence for a contested spec.

repnet submit-evidence 1 2 https://example.com/counter-evidence.json

Agreements and DKG publishing

repnet publish-agreement

Publish a product-native job agreement payload.

repnet publish-agreement agreement.json

Example agreement.json:

{
  "agreement": {
    "jobId": "1",
    "contractor": "0xCONTRACTOR_WALLET",
    "worker": "0xWORKER_WALLET",
    "amount": "100000000",
    "category": "software-development",
    "specs": [
      { "title": "Implementation", "weight": 5000 },
      { "title": "Tests", "weight": 2500 },
      { "title": "Documentation", "weight": 2500 }
    ]
  },
  "visibility": "public"
}

For private requirements, use the private agreement flow supported by the SDK/publisher setup instead of putting sensitive text in public feedback.

Canonical action registry

repnet action

Execute any canonical RepNet SDK action directly.

repnet action repnet_preview_payment '{"amount":100}'

You can pass either inline JSON or a path to a JSON file:

repnet action repnet_create_escrow escrow-params.json

Use this when a new SDK action exists before it has a dedicated CLI shortcut. For example, publish a DKG Agent Profile explicitly with repnet action repnet_publish_agent_profile profile.json when you do not want to rely on automatic onboarding publishing.