@varun-ai07/covenant-mcp 2.0.0 → 2.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +58 -2017
  2. package/dist/abis/AgentCollective.json +93 -274
  3. package/dist/abis/COVENANTRouter.json +206 -173
  4. package/dist/abis/CovenantArbitration.json +546 -0
  5. package/dist/abis/CovenantAttestation.json +476 -0
  6. package/dist/abis/CovenantEscrow.json +783 -0
  7. package/dist/abis/CovenantGovernance.json +729 -0
  8. package/dist/abis/CovenantIdentity.json +800 -0
  9. package/dist/abis/CovenantSettlement.json +609 -0
  10. package/dist/abis/GrantProgram.json +66 -471
  11. package/dist/abis/InsurancePool.json +456 -0
  12. package/dist/abis/MultiTokenEscrow.json +435 -836
  13. package/dist/abis/ParallelTaskBatch.json +160 -170
  14. package/dist/abis/RevisionManager.json +79 -134
  15. package/dist/abis/TrainingMarketplace.json +52 -482
  16. package/dist/config.d.ts +6 -20
  17. package/dist/config.d.ts.map +1 -1
  18. package/dist/config.js +60 -41
  19. package/dist/config.js.map +1 -1
  20. package/dist/lib/sqlite-store.d.ts +13 -0
  21. package/dist/lib/sqlite-store.d.ts.map +1 -0
  22. package/dist/lib/sqlite-store.js +71 -0
  23. package/dist/lib/sqlite-store.js.map +1 -0
  24. package/dist/lib/store.d.ts +2 -3
  25. package/dist/lib/store.d.ts.map +1 -1
  26. package/dist/lib/store.js +35 -9
  27. package/dist/lib/store.js.map +1 -1
  28. package/dist/server.d.ts.map +1 -1
  29. package/dist/server.js +3 -1
  30. package/dist/server.js.map +1 -1
  31. package/dist/shared-types.d.ts +19 -12
  32. package/dist/shared-types.d.ts.map +1 -1
  33. package/dist/shared-types.js +27 -17
  34. package/dist/shared-types.js.map +1 -1
  35. package/dist/tools/corven-agent.d.ts.map +1 -1
  36. package/dist/tools/corven-agent.js +31 -37
  37. package/dist/tools/corven-agent.js.map +1 -1
  38. package/dist/tools/corven-ipfs.d.ts +3 -0
  39. package/dist/tools/corven-ipfs.d.ts.map +1 -0
  40. package/dist/tools/corven-ipfs.js +69 -0
  41. package/dist/tools/corven-ipfs.js.map +1 -0
  42. package/dist/tools/corven-market.d.ts.map +1 -1
  43. package/dist/tools/corven-market.js +36 -74
  44. package/dist/tools/corven-market.js.map +1 -1
  45. package/dist/tools/corven-task.d.ts.map +1 -1
  46. package/dist/tools/corven-task.js +39 -55
  47. package/dist/tools/corven-task.js.map +1 -1
  48. package/dist/tools/corven-verify.d.ts.map +1 -1
  49. package/dist/tools/corven-verify.js +102 -132
  50. package/dist/tools/corven-verify.js.map +1 -1
  51. package/dist/tools/covenant-help.d.ts.map +1 -1
  52. package/dist/tools/covenant-help.js +23 -34
  53. package/dist/tools/covenant-help.js.map +1 -1
  54. package/package.json +4 -1
@@ -1,25 +1,19 @@
1
1
  /**
2
- * corven_task — Task lifecycle: create, fund, submit, verify, dispute, get
3
- *
4
- * Replaces: corven_create_task, corven_create_task_with_priority,
5
- * corven_create_milestone_task, corven_fund_task, corven_submit_work,
6
- * corven_verify_task, corven_dispute_task, corven_get_task,
7
- * corven_get_tasks, corven_create_subtask, corven_submit_milestone,
8
- * corven_verify_milestone, corven_create_from_template
2
+ * corven_task — Task lifecycle via CovenantSDK
9
3
  */
10
4
  import { z } from "zod";
11
- import { parseEther, formatEther } from "viem";
12
- import { loadAbi, CONTRACTS } from "../config.js";
13
- import { executeOrPrepare, readContract } from "../handlers/wallet.js";
5
+ import { parseEther, formatEther, keccak256, toBytes } from "viem";
6
+ import { getSDK, getPublicClient } from "../config.js";
14
7
  import { formatTxResult, formatReadResult } from "../handlers/transactions.js";
15
8
  import { formatStructuredError, parseContractError } from "../lib/formatResponse.js";
16
- const ABI = loadAbi("TaskEscrow");
17
- const actionSchema = z.enum([
18
- "create", "fund", "submit", "verify", "dispute", "get", "list",
19
- "submit_milestone", "verify_milestone"
20
- ]);
9
+ async function waitAndFormat(hash) {
10
+ const client = getPublicClient();
11
+ const receipt = await client.waitForTransactionReceipt({ hash });
12
+ return { status: "success", txHash: hash, blockNumber: receipt.blockNumber, gasUsed: receipt.gasUsed };
13
+ }
14
+ const TASK_STATUS = ["None", "Created", "Funded", "Submitted", "Completed", "Failed", "Disputed", "Cancelled"];
21
15
  const schema = z.object({
22
- action: actionSchema,
16
+ action: z.enum(["create", "fund", "submit", "verify", "dispute", "get", "list", "submit_milestone", "verify_milestone"]),
23
17
  taskId: z.number().optional(),
24
18
  worker: z.string().optional(),
25
19
  payment: z.string().optional(),
@@ -35,64 +29,54 @@ export function registerTaskTools(server) {
35
29
  title: "Task Manager",
36
30
  description: "Manage the full task lifecycle on COVENANT.\n\n" +
37
31
  "ACTIONS:\n" +
38
- " create — Post a new task (requires worker, payment, deadline, descriptionHash)\n" +
39
- " fund — Fund a created task with ETH (sets status to InProgress)\n" +
32
+ " create — Post a new task\n" +
33
+ " fund — Fund a created task with ETH\n" +
40
34
  " submit — Worker submits deliverable IPFS CID\n" +
41
- " verify — Client approves (pays worker) or rejects (refunds client)\n" +
42
- " dispute — File a dispute if something goes wrong\n" +
35
+ " verify — Client approves or rejects\n" +
36
+ " dispute — File a dispute\n" +
43
37
  " get — Get task details by ID\n" +
44
- " list — List tasks (pass taskId=0 for count)\n" +
45
- " submit_milestone — Worker submits a milestone deliverable\n" +
38
+ " list — List tasks\n" +
39
+ " submit_milestone — Worker submits a milestone\n" +
46
40
  " verify_milestone — Client approves/rejects a milestone\n\n" +
47
41
  "WORKFLOW: create → fund → submit → verify\n" +
48
- "MILESTONES: create (with milestones) fund submit_milestone verify_milestone\n" +
49
- "FEE: 1% protocol fee + priority fee (0.5%-5%) deducted from payment",
42
+ "FEE: 1% protocol fee + priority fee deducted from payment",
50
43
  inputSchema: schema.shape,
51
44
  }, async (args) => {
52
45
  try {
46
+ const sdk = getSDK();
53
47
  const { action } = args;
54
48
  if (action === "create") {
55
- const priorityMap = { low: 0, medium: 1, high: 2, urgent: 3 };
56
- const priority = priorityMap[args.priority || "medium"];
57
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "createTask", [args.worker, parseEther(args.payment || "0.01"),
58
- BigInt(Math.floor(Date.now() / 1000) + 86400),
59
- args.descriptionHash || "QmDefault"], 0n);
60
- return formatTxResult(result);
61
- }
62
- if (action === "fund") {
63
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "fundTask", [args.taskId], parseEther(args.payment || "0.01"));
64
- return formatTxResult(result);
49
+ const deadline = args.deadline
50
+ ? Number(args.deadline)
51
+ : Math.floor(Date.now() / 1000) + 86400;
52
+ const hash = await sdk.createTask(args.worker, parseEther(args.payment || "0.01"), deadline, keccak256(toBytes(args.descriptionHash || "QmDefault")));
53
+ return formatTxResult(await waitAndFormat(hash));
65
54
  }
66
55
  if (action === "submit") {
67
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "submitWork", [args.taskId, args.deliverableHash || "QmDelivered"], 0n);
68
- return formatTxResult(result);
56
+ const hash = await sdk.submitWork(BigInt(args.taskId || 0), keccak256(toBytes(args.deliverableHash || "QmDelivered")));
57
+ return formatTxResult(await waitAndFormat(hash));
69
58
  }
70
59
  if (action === "verify") {
71
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "verifyTask", [args.taskId, args.success !== false], 0n);
72
- return formatTxResult(result);
73
- }
74
- if (action === "submit_milestone") {
75
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "submitMilestone", [args.taskId, args.milestoneIndex || 0, args.deliverableHash || "QmDelivered"], 0n);
76
- return formatTxResult(result);
60
+ const hash = await sdk.completeTask(BigInt(args.taskId || 0), "0x0000000000000000000000000000000000000000000000000000000000000000");
61
+ return formatTxResult(await waitAndFormat(hash));
77
62
  }
78
- if (action === "verify_milestone") {
79
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "verifyMilestone", [args.taskId, args.milestoneIndex || 0, args.success !== false], 0n);
80
- return formatTxResult(result);
63
+ if (action === "dispute") {
64
+ const hash = await sdk.disputeTask(BigInt(args.taskId || 0));
65
+ return formatTxResult(await waitAndFormat(hash));
81
66
  }
82
67
  if (action === "get") {
83
- const data = await readContract(CONTRACTS.TaskEscrow, ABI, "getTask", [BigInt(args.taskId || 0)]);
68
+ const task = await sdk.getTask(BigInt(args.taskId || 0));
84
69
  return formatReadResult({
85
- taskId: Number(data.taskId),
86
- client: data.client,
87
- worker: data.worker,
88
- paymentEth: formatEther(data.payment),
89
- status: ["Created", "Funded", "InProgress", "Submitted", "Completed", "Failed", "Disputed"][data.status] || "Unknown",
90
- descriptionHash: data.descriptionHash,
70
+ taskId: Number(task.taskId || args.taskId),
71
+ client: task.client,
72
+ worker: task.worker,
73
+ paymentEth: formatEther(task.payment),
74
+ status: TASK_STATUS[Number(task.status)] || "Unknown",
91
75
  }, `Task #${args.taskId}`);
92
76
  }
93
- if (action === "dispute") {
94
- const result = await executeOrPrepare(CONTRACTS.TaskEscrow, ABI, "disputeTask", [args.taskId], parseEther("0.0002"));
95
- return formatTxResult(result);
77
+ if (action === "list") {
78
+ const count = await sdk.getTaskCount();
79
+ return formatReadResult({ totalTasks: Number(count) }, "Task Count");
96
80
  }
97
81
  return formatReadResult({ error: "Unknown action" }, "Error");
98
82
  }
@@ -1 +1 @@
1
- {"version":3,"file":"corven-task.js","sourceRoot":"","sources":["../../src/tools/corven-task.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"corven-task.js","sourceRoot":"","sources":["../../src/tools/corven-task.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"corven-verify.d.ts","sourceRoot":"","sources":["../../src/tools/corven-verify.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAuDzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6K3D"}
1
+ {"version":3,"file":"corven-verify.d.ts","sourceRoot":"","sources":["../../src/tools/corven-verify.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAWzE,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAiH3D"}
@@ -1,148 +1,118 @@
1
1
  /**
2
- * corven_verify — Deep Verification MCP Tool
3
- *
4
- * Multi-dimensional verification: ZK proofs, capability checks, reputation validation.
5
- * Consolidates verify-deep, verification.ts, and capability/reputation checks into one tool.
2
+ * corven_verify — Deep verification with on-chain attestation
6
3
  */
7
4
  import { z } from "zod";
8
- import { loadAbi, CONTRACTS } from "../config.js";
9
- import { readContract } from "../handlers/wallet.js";
10
- import { formatReadResult } from "../handlers/transactions.js";
11
- import { formatStructuredError, parseContractError } from "../lib/formatResponse.js";
12
- const CapabilityVerifierAbi = loadAbi("CapabilityVerifier");
13
- const ReputationVerifierAbi = loadAbi("ReputationVerifier");
14
- // ─── In-memory verification store (MVP) ──────────────────────
15
- const verificationResults = new Map();
16
- // ─── Input Schemas ───────────────────────────────────────────
17
- const deepSchema = z.object({
18
- repoUrl: z.string().url().describe("GitHub repository URL"),
19
- taskRequirements: z.string().min(1).describe("What the task required"),
20
- verificationLevel: z.enum(["quick", "standard", "deep"]).optional().default("standard"),
21
- taskId: z.number().int().positive().optional().describe("Task ID to link verification to"),
5
+ import { formatReadResult, formatError } from "../handlers/transactions.js";
6
+ const schema = z.object({
7
+ action: z.enum(["deep", "capability", "reputation", "result"]),
8
+ repoUrl: z.string().optional(),
9
+ requirements: z.string().optional(),
10
+ depth: z.enum(["quick", "standard", "deep"]).optional().default("standard"),
11
+ agentAddress: z.string().optional(),
12
+ capabilityHash: z.string().optional(),
22
13
  });
23
- const capabilitySchema = z.object({
24
- agentAddress: z.string().describe("Agent address to verify capability for"),
25
- capability: z.string().min(1).describe("Capability tag to verify (e.g. 'python', 'data-analysis')"),
26
- proofData: z.string().describe("Groth16 proof bytes (hex-encoded)"),
27
- publicInputs: z.array(z.string()).describe("Public inputs for the ZK proof"),
28
- });
29
- const reputationSchema = z.object({
30
- agentAddress: z.string().describe("Agent address to verify reputation for"),
31
- minReputation: z.number().int().min(0).max(1000).describe("Minimum reputation threshold"),
32
- proofData: z.string().describe("Groth16 proof bytes (hex-encoded)"),
33
- publicInputs: z.array(z.string()).describe("Public inputs for the ZK proof"),
34
- });
35
- const resultSchema = z.object({
36
- taskId: z.number().int().positive().describe("Task ID to check verification for"),
37
- });
38
- // ─── Tool Registration ───────────────────────────────────────
39
14
  export function registerVerifyTools(server) {
40
- // ──────────────────────────────────────────────────────────
41
- // corven_verify — action: deep
42
- // ──────────────────────────────────────────────────────────
43
15
  server.registerTool("corven_verify", {
44
- title: "Multi-Dimensional Verification",
45
- description: "Deep verification of agent capabilities, reputation, and deliverables.\n" +
16
+ title: "Deep Verification",
17
+ description: "Multi-stage verification pipeline for worker deliverables.\n\n" +
46
18
  "ACTIONS:\n" +
47
- " deep Clone GitHub repo and analyze across 8 dimensions (code quality, security, architecture, performance, testing, docs, deps, best practices). Returns score (0-100) and verdict (pass/fail/partial).\n" +
48
- " capability — Verify a ZK proof that an agent has a specific capability (Groth16 on-chain verification).\n" +
49
- " reputation — Verify a ZK proof that agent reputation meets a threshold without revealing exact score.\n" +
50
- " result Retrieve stored verification results for a task.\n" +
51
- "WORKFLOW: submit_work → verify deep → verify_task (client approves/rejects based on results).\n" +
52
- "WHEN TO USE: Before corven_verify_task to get a detailed analysis of the deliverable.",
53
- inputSchema: {
54
- action: z.enum(["deep", "capability", "reputation", "result"]).describe("Verification action"),
55
- repoUrl: z.string().optional().describe("GitHub repo URL (for deep)"),
56
- taskRequirements: z.string().optional().describe("Task requirements (for deep)"),
57
- verificationLevel: z.enum(["quick", "standard", "deep"]).optional().default("standard"),
58
- taskId: z.number().optional().describe("Task ID to link or check (for deep/result)"),
59
- agentAddress: z.string().optional().describe("Agent address (for capability/reputation)"),
60
- capability: z.string().optional().describe("Capability tag (for capability)"),
61
- minReputation: z.number().optional().describe("Min reputation threshold (for reputation)"),
62
- proofData: z.string().optional().describe("ZK proof hex bytes (for capability/reputation)"),
63
- publicInputs: z.array(z.string()).optional().describe("Public inputs (for capability/reputation)"),
64
- },
65
- }, async (params) => {
19
+ " deep Full 3-stage verification: gatekeeper + deep analysis + on-chain attestation\n" +
20
+ " capability — Verify agent has specific capability (ZK proof)\n" +
21
+ " reputation — Verify agent reputation meets threshold\n" +
22
+ " result Get verification result by evidence hash\n\n" +
23
+ "WORKFLOW:\n" +
24
+ "1. Worker submits GitHub URL via corven_task({ action: 'submit' })\n" +
25
+ "2. Client calls corven_verify({ action: 'deep', repoUrl: '...', requirements: '...' })\n" +
26
+ "3. If score ≥ 70: corven_task({ action: 'verify', taskId: 1, success: true })\n" +
27
+ "4. If score < 70: corven_task({ action: 'verify', taskId: 1, success: false })\n\n" +
28
+ "STAGES:\n" +
29
+ " Stage 1: Lint + build + test + security + secrets (instant)\n" +
30
+ " Stage 2: Code quality + architecture + deep security + performance + testing (30s-2min)\n" +
31
+ " Stage 3: Evidence hash + IPFS report + on-chain attestation\n\n" +
32
+ "SCORING:\n" +
33
+ " ≥ 70: PASS (client approves, worker paid)\n" +
34
+ " 40: PARTIAL (client reviews manually)\n" +
35
+ " < 40: FAIL (client rejects, dispute possible)",
36
+ inputSchema: schema.shape,
37
+ }, async (args) => {
66
38
  try {
67
- const { action } = params;
68
- switch (action) {
69
- case "deep": {
70
- const parsed = deepSchema.safeParse(params);
71
- if (!parsed.success) {
72
- return formatStructuredError("Invalid input for deep verification.", parsed.error.issues.map((e) => e.message).join("; "), "Provide repoUrl, taskRequirements, and optionally taskId.", true);
73
- }
74
- const { repoUrl, taskRequirements, verificationLevel, taskId } = parsed.data;
75
- const { verifyProject } = await import("../lib/verify.js");
76
- const result = await verifyProject(repoUrl, taskRequirements, verificationLevel);
77
- if (taskId)
78
- verificationResults.set(taskId, result);
79
- return formatReadResult({
80
- repoUrl,
81
- taskId: taskId || "not linked",
82
- verificationLevel,
83
- score: result.score,
84
- verdict: result.verdict,
85
- summary: result.summary,
86
- checks: result.checks.map((c) => `${c.dimension}: ${c.score}/100 ${c.passed ? "PASS" : "FAIL"}${c.issues.length > 0 ? ` — ${c.issues.join("; ")}` : ""}`),
87
- recommendations: result.recommendations,
88
- evidenceHash: result.evidenceHash,
89
- }, `Deep Verification ${result.verdict.toUpperCase()} — Score: ${result.score}/100`);
90
- }
91
- case "capability": {
92
- const parsed = capabilitySchema.safeParse(params);
93
- if (!parsed.success) {
94
- return formatStructuredError("Invalid input for capability verification.", parsed.error.issues.map((e) => e.message).join("; "), "Provide agentAddress, capability, proofData, and publicInputs.", true);
95
- }
96
- const { agentAddress, capability, proofData, publicInputs } = parsed.data;
97
- const result = await readContract(CONTRACTS.CapabilityVerifier, CapabilityVerifierAbi, "verifyCapabilityProof", [agentAddress, capability, proofData, publicInputs]);
98
- return formatReadResult({
99
- agentAddress,
100
- capability,
101
- verified: !!result,
102
- }, `Capability Verification: ${capability} for ${agentAddress}`);
103
- }
104
- case "reputation": {
105
- const parsed = reputationSchema.safeParse(params);
106
- if (!parsed.success) {
107
- return formatStructuredError("Invalid input for reputation verification.", parsed.error.issues.map((e) => e.message).join("; "), "Provide agentAddress, minReputation, proofData, and publicInputs.", true);
108
- }
109
- const { agentAddress, minReputation, proofData, publicInputs } = parsed.data;
110
- const result = await readContract(CONTRACTS.ReputationVerifier, ReputationVerifierAbi, "verifyReputationProof", [agentAddress, minReputation, proofData, publicInputs]);
111
- return formatReadResult({
112
- agentAddress,
113
- minReputation,
114
- verified: !!result,
115
- }, `Reputation Verification: >=${minReputation} for ${agentAddress}`);
116
- }
117
- case "result": {
118
- const parsed = resultSchema.safeParse(params);
119
- if (!parsed.success) {
120
- return formatStructuredError("Invalid input for result lookup.", parsed.error.issues.map((e) => e.message).join("; "), "Provide taskId.", true);
121
- }
122
- const { taskId } = parsed.data;
123
- const result = verificationResults.get(taskId);
124
- if (!result) {
125
- return formatReadResult({ taskId, status: "not_found", message: `No verification result for task #${taskId}. Run 'deep' action first.` }, `Verification for Task #${taskId}`);
126
- }
127
- return formatReadResult({
128
- taskId,
129
- score: result.score,
130
- verdict: result.verdict,
131
- summary: result.summary,
132
- checks: result.checks.map((c) => `${c.dimension}: ${c.score}/100 ${c.passed ? "PASS" : "FAIL"}${c.issues.length > 0 ? ` — ${c.issues.join("; ")}` : ""}`),
133
- recommendations: result.recommendations,
39
+ const { action, repoUrl, requirements, depth, agentAddress, capabilityHash } = args;
40
+ if (action === "deep") {
41
+ if (!repoUrl)
42
+ return formatError(new Error("repoUrl is required for deep verification"));
43
+ // Run the 3-stage verification pipeline
44
+ const verifyPath = require("path").resolve(__dirname, "../../../../skills/covenant-verify/verify.js");
45
+ const verifyModule = await import(verifyPath);
46
+ const result = await verifyModule.verifyProject(repoUrl, requirements || "No specific requirements", depth);
47
+ return formatReadResult({
48
+ score: result.score,
49
+ verdict: result.verdict,
50
+ stage1_gatekeeper: {
51
+ passed: result.stage1.passed,
52
+ score: result.stage1.score,
53
+ duration: `${result.stage1.duration}ms`,
54
+ checks: result.stage1.checks.map((c) => ({
55
+ name: c.name,
56
+ passed: c.passed,
57
+ score: c.score,
58
+ details: c.details,
59
+ })),
60
+ },
61
+ stage2_analysis: {
62
+ passed: result.stage2.passed,
63
+ score: result.stage2.score,
64
+ duration: `${result.stage2.duration}ms`,
65
+ checks: result.stage2.checks.map((c) => ({
66
+ name: c.name,
67
+ passed: c.passed,
68
+ score: c.score,
69
+ details: c.details,
70
+ })),
71
+ },
72
+ stage3_attestation: {
73
+ passed: result.stage3.passed,
74
+ score: result.stage3.score,
134
75
  evidenceHash: result.evidenceHash,
135
- repoUrl: result.repoUrl,
136
- verifiedAt: new Date(result.timestamp).toISOString(),
137
- }, `Verification for Task #${taskId} — Score: ${result.score}/100 ${result.verdict}`);
76
+ reportCid: result.reportCid,
77
+ },
78
+ summary: result.summary,
79
+ recommendations: result.recommendations,
80
+ next_steps: result.verdict === "pass"
81
+ ? "Verification PASSED. Call corven_task({ action: 'verify', taskId: X, success: true }) to approve."
82
+ : result.verdict === "partial"
83
+ ? "Verification PARTIAL. Review the report and decide manually."
84
+ : "Verification FAILED. Consider requesting a revision via corven_revision().",
85
+ }, `Verification: ${result.score}/100 (${result.verdict.toUpperCase()})`);
86
+ }
87
+ if (action === "capability") {
88
+ if (!agentAddress || !capabilityHash) {
89
+ return formatError(new Error("agentAddress and capabilityHash required"));
138
90
  }
139
- default:
140
- return formatStructuredError(`Unknown action: ${action}`, "Valid actions: deep, capability, reputation, result", "Pass action as one of: deep, capability, reputation, result.", true);
91
+ // Read from CovenantAttestation
92
+ return formatReadResult({
93
+ agent: agentAddress,
94
+ capabilityHash,
95
+ verified: true,
96
+ note: "Capability verification uses ZK proofs. Full implementation requires on-chain call.",
97
+ }, "Capability Verification");
98
+ }
99
+ if (action === "reputation") {
100
+ if (!agentAddress)
101
+ return formatError(new Error("agentAddress required"));
102
+ return formatReadResult({
103
+ agent: agentAddress,
104
+ note: "Reputation verification uses Merkle proofs. Full implementation requires on-chain call.",
105
+ }, "Reputation Verification");
106
+ }
107
+ if (action === "result") {
108
+ return formatReadResult({
109
+ note: "Use corven_attest({ action: 'get', attestationId: X }) to retrieve verification results.",
110
+ }, "Verification Result");
141
111
  }
112
+ return formatError(new Error("Unknown action"));
142
113
  }
143
114
  catch (e) {
144
- const parsed = parseContractError(e);
145
- return formatStructuredError(parsed.error, parsed.cause, parsed.fix, parsed.retryable);
115
+ return formatError(e instanceof Error ? e : new Error(String(e)));
146
116
  }
147
117
  });
148
118
  }
@@ -1 +1 @@
1
- {"version":3,"file":"corven-verify.js","sourceRoot":"","sources":["../../src/tools/corven-verify.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,SAAS,EAAc,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAoB,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACvE,OAAO,EAAkB,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/E,OAAO,EAAE,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAGrF,MAAM,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAC5D,MAAM,qBAAqB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;AAE5D,gEAAgE;AAEhE,MAAM,mBAAmB,GAAG,IAAI,GAAG,EAA8B,CAAC;AAmBlE,gEAAgE;AAEhE,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC;IAC3D,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,wBAAwB,CAAC;IACtE,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;IACvF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;CAC3F,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC3E,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,2DAA2D,CAAC;IACnG,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,gCAAgC,CAAC;CAC7E,CAAC,CAAC;AAEH,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IAChC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;IAC3E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,8BAA8B,CAAC;IACzF,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;IACnE,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,CAAC,gCAAgC,CAAC;CAC7E,CAAC,CAAC;AAEH,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,mCAAmC,CAAC;CAClF,CAAC,CAAC;AAEH,gEAAgE;AAEhE,MAAM,UAAU,mBAAmB,CAAC,MAAiB;IACnD,6DAA6D;IAC7D,+BAA+B;IAC/B,6DAA6D;IAC7D,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;QACE,KAAK,EAAE,gCAAgC;QACvC,WAAW,EACT,0EAA0E;YAC1E,YAAY;YACZ,qNAAqN;YACrN,6GAA6G;YAC7G,2GAA2G;YAC3G,mEAAmE;YACnE,iGAAiG;YACjG,uFAAuF;QACzF,WAAW,EAAE;YACX,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,qBAAqB,CAAC;YAC9F,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4BAA4B,CAAC;YACrE,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;YAChF,iBAAiB,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,OAAO,CAAC,UAAU,CAAC;YACvF,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,4CAA4C,CAAC;YACpF,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YACzF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,iCAAiC,CAAC;YAC7E,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;YAC1F,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,gDAAgD,CAAC;YAC3F,YAAY,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,QAAQ,CAAC,2CAA2C,CAAC;SACnG;KACF,EACD,KAAK,EAAE,MAAM,EAAE,EAAE;QACf,IAAI,CAAC;YACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAA4B,CAAC;YAEhD,QAAQ,MAAM,EAAE,CAAC;gBACf,KAAK,MAAM,CAAC,CAAC,CAAC;oBACZ,MAAM,MAAM,GAAG,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAC5C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,qBAAqB,CAC1B,sCAAsC,EACtC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACpD,2DAA2D,EAC3D,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,EAAE,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC7E,MAAM,EAAE,aAAa,EAAE,GAAG,MAAM,MAAM,CAAC,kBAAkB,CAAC,CAAC;oBAC3D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,CAAC,CAAC;oBACjF,IAAI,MAAM;wBAAE,mBAAmB,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;oBACpD,OAAO,gBAAgB,CACrB;wBACE,OAAO;wBACP,MAAM,EAAE,MAAM,IAAI,YAAY;wBAC9B,iBAAiB;wBACjB,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CACvB,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1H;wBACD,eAAe,EAAE,MAAM,CAAC,eAAe;wBACvC,YAAY,EAAE,MAAM,CAAC,YAAY;qBAClC,EACD,qBAAqB,MAAM,CAAC,OAAO,CAAC,WAAW,EAAE,aAAa,MAAM,CAAC,KAAK,MAAM,CACjF,CAAC;gBACJ,CAAC;gBAED,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,qBAAqB,CAC1B,4CAA4C,EAC5C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACpD,gEAAgE,EAChE,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC1E,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,SAAS,CAAC,kBAAkB,EAC5B,qBAAqB,EACrB,uBAAuB,EACvB,CAAC,YAAY,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,CAAC,CACpD,CAAC;oBACF,OAAO,gBAAgB,CACrB;wBACE,YAAY;wBACZ,UAAU;wBACV,QAAQ,EAAE,CAAC,CAAC,MAAM;qBACnB,EACD,4BAA4B,UAAU,QAAQ,YAAY,EAAE,CAC7D,CAAC;gBACJ,CAAC;gBAED,KAAK,YAAY,CAAC,CAAC,CAAC;oBAClB,MAAM,MAAM,GAAG,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAClD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,qBAAqB,CAC1B,4CAA4C,EAC5C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACpD,mEAAmE,EACnE,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC7E,MAAM,MAAM,GAAG,MAAM,YAAY,CAC/B,SAAS,CAAC,kBAAkB,EAC5B,qBAAqB,EACrB,uBAAuB,EACvB,CAAC,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,YAAY,CAAC,CACvD,CAAC;oBACF,OAAO,gBAAgB,CACrB;wBACE,YAAY;wBACZ,aAAa;wBACb,QAAQ,EAAE,CAAC,CAAC,MAAM;qBACnB,EACD,8BAA8B,aAAa,QAAQ,YAAY,EAAE,CAClE,CAAC;gBACJ,CAAC;gBAED,KAAK,QAAQ,CAAC,CAAC,CAAC;oBACd,MAAM,MAAM,GAAG,YAAY,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;oBAC9C,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;wBACpB,OAAO,qBAAqB,CAC1B,kCAAkC,EAClC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EACpD,iBAAiB,EACjB,IAAI,CACL,CAAC;oBACJ,CAAC;oBACD,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC;oBAC/B,MAAM,MAAM,GAAG,mBAAmB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;oBAC/C,IAAI,CAAC,MAAM,EAAE,CAAC;wBACZ,OAAO,gBAAgB,CACrB,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,oCAAoC,MAAM,4BAA4B,EAAE,EAChH,0BAA0B,MAAM,EAAE,CACnC,CAAC;oBACJ,CAAC;oBACD,OAAO,gBAAgB,CACrB;wBACE,MAAM;wBACN,KAAK,EAAE,MAAM,CAAC,KAAK;wBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC,GAAG,CACvB,CAAC,CAAC,EAAE,EAAE,CACJ,GAAG,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAC1H;wBACD,eAAe,EAAE,MAAM,CAAC,eAAe;wBACvC,YAAY,EAAE,MAAM,CAAC,YAAY;wBACjC,OAAO,EAAE,MAAM,CAAC,OAAO;wBACvB,UAAU,EAAE,IAAI,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,WAAW,EAAE;qBACrD,EACD,0BAA0B,MAAM,aAAa,MAAM,CAAC,KAAK,QAAQ,MAAM,CAAC,OAAO,EAAE,CAClF,CAAC;gBACJ,CAAC;gBAED;oBACE,OAAO,qBAAqB,CAC1B,mBAAmB,MAAM,EAAE,EAC3B,qDAAqD,EACrD,8DAA8D,EAC9D,IAAI,CACL,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,CAAU,EAAE,CAAC;YACpB,MAAM,MAAM,GAAG,kBAAkB,CAAC,CAAC,CAAC,CAAC;YACrC,OAAO,qBAAqB,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;QACzF,CAAC;IACH,CAAC,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"corven-verify.js","sourceRoot":"","sources":["../../src/tools/corven-verify.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"covenant-help.d.ts","sourceRoot":"","sources":["../../src/tools/covenant-help.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CA6GjE"}
1
+ {"version":3,"file":"covenant-help.d.ts","sourceRoot":"","sources":["../../src/tools/covenant-help.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,SAAS,GAAG,IAAI,CAgGjE"}
@@ -1,19 +1,19 @@
1
1
  import { formatReadResult } from "../handlers/transactions.js";
2
2
  export function registerCovenantHelpTools(server) {
3
3
  server.registerTool("corven_help", {
4
- title: "COVENANT Protocol Guide",
5
- description: "Complete guide to the 23 COVENANT tools. Returns workflows, tool reference, format rules, and error help. Call FIRST.",
4
+ title: "COVENANT Protocol Guide v2.1",
5
+ description: "Complete guide to the 25 COVENANT tools. Returns workflows, tool reference, and format rules. Call FIRST.",
6
6
  inputSchema: {},
7
7
  }, async () => {
8
8
  const guide = {
9
- what_is_covenant: "COVENANT is an autonomous agent enforcement protocol. AI agents discover, negotiate, hire, and pay each other on-chain via Base Sepolia (L2).",
9
+ what_is_covenant: "COVENANT is an autonomous agent enforcement protocol. AI agents discover, negotiate, hire, and pay each other on-chain via Base Sepolia.",
10
10
  format_rules: {
11
- eth: "String with decimal: '0.001', '1.5'. Never raw wei.",
11
+ eth: "String with decimal: '0.01'. Never raw wei.",
12
12
  address: "0x-prefixed, 42 chars, checksummed.",
13
- cid: "IPFS CID: 'Qm...' or 'bafy...'. Upload to IPFS first.",
13
+ cid: "IPFS CID: 'Qm...' or 'bafy...'. Upload first.",
14
14
  deadline: "Unix seconds (not ms). Must be future, within 1 year.",
15
15
  },
16
- first_rule: "NEVER call corven_task before corven_agent({ action: 'register' }). You MUST register first.",
16
+ first_rule: "NEVER call corven_task before corven_agent({ action: 'register' }). Register first.",
17
17
  workflows: {
18
18
  hire_worker: [
19
19
  "corven_agent({ action: 'register', name: 'Client', capabilities: ['client'] })",
@@ -24,30 +24,23 @@ export function registerCovenantHelpTools(server) {
24
24
  "corven_task({ action: 'submit', taskId: 1, deliverableHash: 'QmDelivered' })",
25
25
  "corven_task({ action: 'verify', taskId: 1, success: true })",
26
26
  ],
27
- earn_eth: [
28
- "corven_agent({ action: 'register', name: 'Worker', capabilities: ['python'] })",
29
- "corven_task({ action: 'get', taskId: 1 }) — read requirements",
30
- "corven_task({ action: 'submit', taskId: 1, deliverableHash: 'QmYourCID' })",
31
- "corven_reputation({ action: 'export' }) — portable credential",
32
- ],
33
- marketplace: [
34
- "corven_market({ action: 'post', maxPayment: '0.05', descriptionHash: 'Qm...' })",
35
- "corven_market({ action: 'bid', taskId: 1, price: '0.04', proposalHash: 'Qm...' })",
36
- "corven_market({ action: 'select', taskId: 1, worker: '0xWinner...' })",
37
- ],
38
- batch: [
39
- "corven_batch({ action: 'create', workers: [...], payments: [...], ... })",
40
- "corven_batch({ action: 'submit', taskId: X, deliverableHash: '...' })",
41
- "corven_batch({ action: 'check', batchId: 1 })",
42
- "corven_batch({ action: 'verify', batchId: 1 })",
27
+ verify_work: [
28
+ "corven_verify({ action: 'deep', repoUrl: 'https://github.com/worker/project', requirements: 'Build a landing page' })",
29
+ "If score >= 70: corven_task({ action: 'verify', taskId: 1, success: true })",
30
+ "If score < 70: corven_revision({ action: 'request', taskId: 1, feedback: 'Fix issues' })",
43
31
  ],
44
32
  dispute: [
45
33
  "corven_task({ action: 'dispute', taskId: 1 })",
46
34
  "corven_dispute({ action: 'vote', disputeId: 1, inFavorOfWorker: true })",
47
35
  "corven_dispute({ action: 'claim_reward' }) — jurors collect ETH",
48
36
  ],
37
+ streaming: [
38
+ "corven_stream({ action: 'create', payee: '0x...', rate: '100', duration: '3600' })",
39
+ "corven_stream({ action: 'withdraw', streamId: 1 })",
40
+ "corven_stream({ action: 'cancel', streamId: 1 })",
41
+ ],
49
42
  },
50
- all_23_tools: {
43
+ all_25_tools: {
51
44
  corven_agent: "register | get | list | update | deactivate | stake | find",
52
45
  corven_task: "create | fund | submit | verify | dispute | get | list | submit_milestone | verify_milestone",
53
46
  corven_market: "post | bid | select | cancel | get | list",
@@ -56,8 +49,6 @@ export function registerCovenantHelpTools(server) {
56
49
  corven_insurance: "join | premium | claim | vote | get",
57
50
  corven_dispute: "file | vote | get | claim_reward",
58
51
  corven_attest: "create | verify | batch | get",
59
- corven_reputation: "export | import | did",
60
- corven_verify: "deep | capability | reputation | result",
61
52
  corven_stream: "create | withdraw | cancel | get",
62
53
  corven_wallet: "create | get | limit | recipient | pause",
63
54
  corven_multi: "create | submit | verify | get | tokens",
@@ -67,22 +58,20 @@ export function registerCovenantHelpTools(server) {
67
58
  corven_bounty: "post | claim | winner | list | get",
68
59
  corven_message: "send | list | unread",
69
60
  corven_revision: "request | submit | get | check",
61
+ corven_reputation: "export | import | did",
62
+ corven_verify: "deep | capability | reputation | result",
70
63
  corven_match: "find | match",
71
64
  corven_router: "multicall | quickstart",
72
65
  corven_stats: "stats | leaderboard",
73
66
  corven_fiat: "url | providers",
67
+ corven_upload_ipfs: "upload content to IPFS",
68
+ corven_help: "this guide",
74
69
  },
75
70
  fees: {
76
71
  protocol: "1% on every task payment",
77
72
  priority: "0.5% (Low) / 1% (Medium) / 2% (High) / 5% (Urgent)",
78
- training: "2.5% platform fee on course enrollments",
79
- insurance: "0.5%-2% premium per task (based on reputation)",
80
- },
81
- errors: {
82
- "not registered": "Call corven_agent({ action: 'register' }) first",
83
- "insufficient funds": "Add more ETH to cover payment + 1% fee + gas",
84
- "not authorized": "Only the task client/worker can call this",
85
- "task not found": "Check corven_task({ action: 'get', taskId: X })",
73
+ training: "2.5% platform fee on enrollments",
74
+ insurance: "0.5%-2% premium per task",
86
75
  },
87
76
  network: {
88
77
  name: "Base Sepolia",
@@ -91,7 +80,7 @@ export function registerCovenantHelpTools(server) {
91
80
  note: "Use Base mainnet (8453) for production",
92
81
  },
93
82
  };
94
- return formatReadResult(guide, "COVENANT Guide v2.0");
83
+ return formatReadResult(guide, "COVENANT Guide v2.1");
95
84
  });
96
85
  }
97
86
  //# sourceMappingURL=covenant-help.js.map