{"_id":"@ai-agentree/sdk","_rev":"6-d3462c84c99864f578729208d5f5ba33","name":"@ai-agentree/sdk","dist-tags":{"beta":"0.2.4","latest":"0.2.7"},"versions":{"0.1.0":{"name":"@ai-agentree/sdk","version":"0.1.0","keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","_id":"@ai-agentree/sdk@0.1.0","maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"homepage":"https://ai-agentree.com","bugs":{"url":"https://github.com/argumentree/argumentree/issues"},"dist":{"shasum":"338d3979ca6f84c317aeb30b4b73435d0c262a9f","tarball":"https://registry.npmjs.org/@ai-agentree/sdk/-/sdk-0.1.0.tgz","fileCount":40,"integrity":"sha512-/ZFZb6c/+hYjNnCLnJiku/iRcTXS+AoIZV/XmHsKRux0k+bHB/ZAdK0QcQc1KVU3EhNF9ipJSL95ikWWkVI7GQ==","signatures":[{"sig":"MEUCIGFgIrwRwx6ofiio0y5l0UxX1fDqNcXLM5h9aLq02zAQAiEA8tyMptu5bsiMZr4F2ZXZ564hMuNW1P/+g9L0xfMlf6M=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":170220},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"74a58c18a2ade4e0d2a889d0664fcb05291198ac","scripts":{"build":"tsc","prepublishOnly":"tsc"},"_npmUser":{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"},"repository":{"url":"git+https://github.com/argumentree/argumentree.git","type":"git","directory":"sdk/typescript"},"_npmVersion":"11.6.2","description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0","@types/node":"^20.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.1.0_1772740382939_0.7857491866261763","host":"s3://npm-registry-packages-npm-production"}},"0.2.4":{"name":"@ai-agentree/sdk","version":"0.2.4","keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","_id":"@ai-agentree/sdk@0.2.4","maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"homepage":"https://ai-agentree.com","bugs":{"url":"https://github.com/argumentree/ai-agentree/issues"},"dist":{"shasum":"467d8cebacf53902615846e5a22ce9c895fd9429","tarball":"https://registry.npmjs.org/@ai-agentree/sdk/-/sdk-0.2.4.tgz","fileCount":67,"integrity":"sha512-VN/31uZmcNcWeNcprkM62poycuIflq1kOrO9SI9k9qY4BK0X+SuJKB8ig1R/mByKkJ9oSgGvv+Ku4qw+TVV9tA==","signatures":[{"sig":"MEUCIQDBtP+xlxanUUGf/SIR5tdpHQhBfrlIvDlX4/weJtDGuAIgB5MZISjcWUrwhWoYS67kHHDyswkLUk+Pn9kUTBThXd8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":349092},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"d3ac3a03f86a43b7f89ea9abe893469f6bf3e16f","scripts":{"test":"tsc && node --test \"tests/*.test.js\"","build":"tsc","test:only":"node --test \"tests/*.test.js\"","prepublishOnly":"npm test"},"_npmUser":{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"},"repository":{"url":"git+https://github.com/argumentree/ai-agentree.git","type":"git","directory":"typescript"},"_npmVersion":"11.6.2","description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0","@types/node":"^20.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.2.4_1785924852144_0.11333861564653369","host":"s3://npm-registry-packages-npm-production"}},"0.2.5":{"name":"@ai-agentree/sdk","version":"0.2.5","keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","_id":"@ai-agentree/sdk@0.2.5","maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"homepage":"https://ai-agentree.com","bugs":{"url":"https://github.com/argumentree/ai-agentree/issues"},"dist":{"shasum":"0625266b65e5fb59e6a4323c61ccf632c53c37ab","tarball":"https://registry.npmjs.org/@ai-agentree/sdk/-/sdk-0.2.5.tgz","fileCount":67,"integrity":"sha512-TX+LBR/WWlntM4DPOxhtcfkb3Y5bK0vUWmiOKD+omTsJ56QCu0DAJUCQZFyV30E3rxcaDowK1paggtYYePODVw==","signatures":[{"sig":"MEUCIHzuDD7foyVwfjMW3aRlF5iuByzRV3q3tIyCJZAJ9pTaAiEA+HYNMGhu5kGu8FzQGDInQr7uKOogJ2qkE1EcosqJhWg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":351713},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"bf86cf2ca0734e266b2424bfa7ce5b2dfd2e1850","scripts":{"test":"tsc && node --test \"tests/*.test.js\"","build":"tsc","test:only":"node --test \"tests/*.test.js\"","prepublishOnly":"npm test"},"_npmUser":{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"},"repository":{"url":"git+https://github.com/argumentree/ai-agentree.git","type":"git","directory":"typescript"},"_npmVersion":"11.6.2","description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0","@types/node":"^20.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.2.5_1786645333975_0.17770205048818366","host":"s3://npm-registry-packages-npm-production"}},"0.2.6":{"name":"@ai-agentree/sdk","version":"0.2.6","keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","_id":"@ai-agentree/sdk@0.2.6","maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"homepage":"https://ai-agentree.com","bugs":{"url":"https://github.com/argumentree/ai-agentree/issues"},"dist":{"shasum":"5dbcc92ba4ebf34a214b16dd90b5512fa653d7ab","tarball":"https://registry.npmjs.org/@ai-agentree/sdk/-/sdk-0.2.6.tgz","fileCount":67,"integrity":"sha512-dGgy0c3XPTogFBNJ7s5BGYpF5z5Pdfs5xXGuL72XlE0Z6ZWoWQbAq22D1ImUNI0kZKl5GeDmD/mIb6DI74bk4A==","signatures":[{"sig":"MEQCIEpY9CG4lVIFziY0Pvd+aWOPSUgpyD1enPoeJoXopct6AiBCbTzpQJaHVRCOyJUclmcWbP5xNsCxtdUGfT/s7arRcg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":355529},"main":"dist/index.js","type":"module","types":"dist/index.d.ts","engines":{"node":">=18"},"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"gitHead":"4bb43c2ecb5bfc21f5c5590264144942063becc4","scripts":{"test":"tsc && node --test \"tests/*.test.js\"","build":"tsc","test:only":"node --test \"tests/*.test.js\"","prepublishOnly":"npm test"},"_npmUser":{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"},"repository":{"url":"git+https://github.com/argumentree/ai-agentree.git","type":"git","directory":"typescript"},"_npmVersion":"11.6.2","description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","directories":{},"_nodeVersion":"24.12.0","publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.0","@types/node":"^20.0"},"_npmOperationalInternal":{"tmp":"tmp/sdk_0.2.6_1786649632586_0.866853431188251","host":"s3://npm-registry-packages-npm-production"}},"0.2.7":{"name":"@ai-agentree/sdk","version":"0.2.7","description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","type":"module","main":"dist/index.js","types":"dist/index.d.ts","exports":{".":{"import":"./dist/index.js","types":"./dist/index.d.ts"}},"scripts":{"build":"tsc","test":"tsc && node --test \"tests/*.test.js\"","test:only":"node --test \"tests/*.test.js\"","prepublishOnly":"npm test"},"engines":{"node":">=18"},"devDependencies":{"@types/node":"^20.0","typescript":"^5.0"},"keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","homepage":"https://ai-agentree.com","repository":{"type":"git","url":"git+https://github.com/argumentree/ai-agentree.git","directory":"typescript"},"bugs":{"url":"https://github.com/argumentree/ai-agentree/issues"},"publishConfig":{"access":"public"},"gitHead":"e7ebf55ee4a5f38dfbdd0e5884af0429a3a8e88a","_id":"@ai-agentree/sdk@0.2.7","_nodeVersion":"24.12.0","_npmVersion":"11.6.2","dist":{"integrity":"sha512-Gx1SLeu2gMFAqy/gPzatWxgb64izmRjToj3ne8OqdiId0hrgvB0XATI6q5Fb65qzXz3UKCXf+2ghiuld+1t+Bw==","shasum":"9a24c7b9be53a6ba2f151bd67adc6b6891eb4eaf","tarball":"https://registry.npmjs.org/@ai-agentree/sdk/-/sdk-0.2.7.tgz","fileCount":67,"unpackedSize":356337,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCAHesaRYdW5IE+kMtK+6KMGXLJZRCId5cP12qKuv6L1QIgQ5OoU9CZd/sP5HYDi4GNC2DGmeNJwAlpulRZn2OrqOE="}]},"_npmUser":{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"},"directories":{},"maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sdk_0.2.7_1786663635646_0.5440891210505971"},"_hasShrinkwrap":false}},"time":{"created":"2026-03-05T19:53:02.832Z","modified":"2026-08-13T23:27:15.980Z","0.1.0":"2026-03-05T19:53:03.113Z","0.2.4":"2026-08-05T10:14:12.288Z","0.2.5":"2026-08-13T18:22:14.161Z","0.2.6":"2026-08-13T19:33:52.732Z","0.2.7":"2026-08-13T23:27:15.814Z"},"bugs":{"url":"https://github.com/argumentree/ai-agentree/issues"},"author":{"name":"AI Agentree Team","email":"sdk@ai-agentree.com"},"license":"MIT","homepage":"https://ai-agentree.com","keywords":["ai-agentree","aiagentree","argumentree","decision-tracing","ai-agent","sdk","governance","audit"],"repository":{"type":"git","url":"git+https://github.com/argumentree/ai-agentree.git","directory":"typescript"},"description":"AI Agentree TypeScript SDK — AI Agent Decision Tracing","maintainers":[{"name":"ai-agentree-admin","email":"sdk@ai-agentree.com"}],"readme":"# @ai-agentree/sdk — TypeScript SDK\n\nTypeScript SDK for AI Agentree decision tracing — auto-tracing, reasoning extraction, local mode, and export methods. Near-full parity with the Python SDK (see differences below).\n\n## Requirements\n\n- Node.js >= 18 (uses built-in `fetch`)\n- Zero runtime dependencies\n\n## Installation\n\n```bash\nnpm install @ai-agentree/sdk\n```\n\nOr link locally during development:\n\n```bash\ncd sdk/typescript && npm install && npm run build\n```\n\n## Quick Start — Local Mode (No API Key Needed)\n\n```typescript\nimport { LocalTracer, TracedAgent } from \"@ai-agentree/sdk\";\n\nconst tracer = new LocalTracer();\nconst client = tracer.getClient();\n\nconst agent = new TracedAgent(client, { workflowId: \"claim_review\", entityId: \"CLM-4821\" });\nawait agent.start();\nconst response = await agent.chat(myLlm, \"Review this insurance claim for $15,000\");\nawait agent.end();\n\n// Export results\nawait agent.exportMarkdown(\"trace.md\");\nconsole.log(agent.stats());\n```\n\n## Quick Start — Cloud Mode\n\n```typescript\nimport { AgentreeClient, TracedAgent } from \"@ai-agentree/sdk\";\n\nconst client = new AgentreeClient({\n  apiKey: \"ask_...\",\n  baseUrl: \"https://your-tenant.argumentree.com\",\n  tenantId: \"your-tenant-id\",\n});\n\nconst agent = new TracedAgent(client, {\n  workflowId: \"claim_review\",\n  entityType: \"claim\",\n  entityId: \"CLM-4821\",\n  title: \"Insurance Claim Review\",\n});\nawait agent.start();\nconst response = await agent.chat(myLlm, \"Review this insurance claim\");\nawait agent.end();\n```\n\n## How It Works — 3 Integration Stages\n\nThe SDK supports three integration stages with increasing data quality:\n\n### Stage 1: Passive Tracing (`TracedLLM` / `instrumentLlm`)\n\n**No prompt changes.** Wraps your LLM transparently. The SDK intercepts the response and extracts what it can using heuristics.\n\n```typescript\nconst traced = instrumentLlm(new OpenAI(), client, \"review\");\n// Your prompts are unchanged — tracing is invisible\nconst response = await traced.chat.completions.create({ ... });\n```\n\n**Data quality:** Basic — bullet/list parsing, keyword-guessed categories, no relations or confidence.\n\n### Stage 2: Structured Prompts (`TracedAgent`, default)\n\n**Adds `DECISION_SYSTEM_PROMPT`** that instructs the LLM to output structured JSON. This is the default.\n\n```typescript\nconst agent = new TracedAgent(client, {\n  workflowId: \"review\", entityId: \"ORD-123\",\n  // useStructuredPrompt: true  ← default\n});\n```\n\n**Data quality:** Rich — categories, confidence scores, supports/opposes relations, structured decisions.\n\n### Stage 3: Argument Tree Prompts (`useArgumentPrompt`)\n\n**Uses `ARGUMENT_SYSTEM_PROMPT`** for full pro/con argument trees with hierarchy levels.\n\n```typescript\nconst agent = new TracedAgent(client, {\n  workflowId: \"review\", entityId: \"ORD-123\",\n  useArgumentPrompt: true,  // overrides useStructuredPrompt\n});\n```\n\n**Data quality:** Maximum — full argument hierarchy, typed relations, hierarchy levels, structured evidence.\n\n### Data Quality Summary\n\n| | Stage 1 (Passive) | Stage 2 (Structured) | Stage 3 (Argument Tree) |\n|---|---|---|---|\n| **Prompt changes** | None | System prompt added | System prompt added |\n| **Steps** | Bullet/list heuristics | LLM-structured JSON | LLM-structured JSON |\n| **Categories** | Keyword-guessed | LLM-assigned | LLM-assigned |\n| **Confidence** | Not available | Per-step scores | Per-step scores |\n| **Relations** | Not available | Supports/opposes | Full hierarchy |\n| **Decision** | Keyword scan | Structured | Structured |\n\n## Integration Methods\n\n### Method 1: TracedAgent (Recommended)\n\n```typescript\nimport { AgentreeClient, TracedAgent } from \"@ai-agentree/sdk\";\n\nconst client = new AgentreeClient({ apiKey: \"...\", baseUrl: \"...\", tenantId: \"...\" });\n\nconst agent = new TracedAgent(client, {\n  workflowId: \"order_review\",\n  entityType: \"order\",\n  entityId: \"ORD-123\",\n  // useStructuredPrompt: true,   // default — prepends DECISION_SYSTEM_PROMPT\n  // useArgumentPrompt: false,    // set true for full argument tree (Stage 3)\n});\nawait agent.start();\nconst response = await agent.chat(llm, \"Should we approve this $500 order?\", {\n  context: { order_amount: 500, customer_type: \"new\" },\n});\nawait agent.end();\n\n// Access extracted reasoning\nconsole.log(agent.extractedReasoning);\n```\n\n### Method 2: instrumentLlm (One-Liner Wrapper)\n\n```typescript\nimport { AgentreeClient, instrumentLlm } from \"@ai-agentree/sdk\";\nimport OpenAI from \"openai\";\n\nconst client = new AgentreeClient({ apiKey: \"...\", baseUrl: \"...\", tenantId: \"...\" });\nconst traced = instrumentLlm(new OpenAI(), client, \"review\");\n\n// Use exactly like normal OpenAI — tracing is automatic\nconst response = await traced.chat.completions.create({\n  model: \"gpt-4\",\n  messages: [{ role: \"user\", content: \"Review order ORD-123\" }],\n  _entity_id: \"ORD-123\",\n});\n```\n\n### Method 3: Manual Control\n\n```typescript\nconst trace = await client.startTrace({\n  agentId: \"claims-processor\",\n  workflowId: \"claim_review\",\n  entityType: \"claim\",\n  entityId: \"CLM-4821\",\n});\n\nawait trace.addInput(\"claim_amount\", 2340.0, { source: \"database\" });\nawait trace.addStep({\n  tempId: \"s1\",\n  title: \"Check claim threshold\",\n  category: \"financial_threshold\",\n  confidence: 0.95,\n});\nawait trace.seal({ decisionId: \"d1\", action: \"approve\", confidence: 0.94 });\n```\n\n## Export Methods\n\nAfter tracing, export results in multiple formats:\n\n```typescript\nconst agent = new TracedAgent(client, { workflowId: \"review\", entityId: \"X\" });\nawait agent.start();\nawait agent.chat(llm, \"Review this claim\");\nawait agent.end();\n\nagent.printRaw();                           // Pretty-print raw LLM response\nawait agent.exportJson(\"trace.json\");       // Formatted JSON\nawait agent.exportText(\"trace.txt\");        // Human-readable plain text\nawait agent.exportMarkdown(\"trace.md\");     // Markdown with headers\nawait agent.exportMermaid(\"trace.mmd\");     // Mermaid diagram (steps + relations)\nawait agent.exportJsonl(\"traces.jsonl\");    // Append as JSONL line\n\nconst stats = agent.stats();\n// { word_count: 234, step_count: 5, relation_count: 3,\n//   input_count: 2, categories: ['cost_benefit', 'risk_assessment'],\n//   has_decision: true }\n```\n\n## Local-First Mode (LocalTracer)\n\nZero-config local tracing — console + JSONL file, no API needed:\n\n```typescript\nimport { LocalTracer } from \"@ai-agentree/sdk\";\n\nconst tracer = new LocalTracer();                                   // console + file\nconst tracer = new LocalTracer({ console: false });                  // file only\nconst tracer = new LocalTracer({ filePath: \"my-traces.jsonl\" });     // custom path\n\nconst client = tracer.getClient();\n```\n\n## Reasoning Extraction\n\nExtract structured reasoning from any LLM output:\n\n```typescript\nimport { ReasoningExtractor } from \"@ai-agentree/sdk\";\n\nconst extractor = new ReasoningExtractor();\n\n// Works with JSON\nconst extracted = extractor.extract('{\"reasoning_steps\": [...], \"decision\": {...}}');\n\n// Also works with freeform text\nconst extracted2 = extractor.extract(`\n1. Checked the order amount ($500) against threshold\n2. Verified customer history - new customer\n3. Assessed risk level\n\nDecision: Approve with standard verification\n`);\n\n// Returns: { inputs: [...], steps: [...], relations: [...], decision: {...} }\n```\n\n## Prompt Templates\n\nUse built-in prompts for consistent structured output:\n\n```typescript\nimport {\n  DECISION_SYSTEM_PROMPT,\n  ARGUMENT_SYSTEM_PROMPT,\n  formatDecisionPrompt,\n} from \"@ai-agentree/sdk\";\n\n// System prompt for structured JSON reasoning (Stage 2)\nconst system = DECISION_SYSTEM_PROMPT;\n\n// System prompt for full argument trees (Stage 3)\nconst argSystem = ARGUMENT_SYSTEM_PROMPT;\n\n// Format user message with context\nconst userMessage = formatDecisionPrompt(\"Review this loan\", { amount: 50000 });\n```\n\n## Using with MCP (Model Context Protocol)\n\nFor Claude and other MCP-enabled agents, provide AIAgentree tools:\n\n```typescript\nimport { getMcpTools } from \"@ai-agentree/sdk\";\n\n// Get tool definitions\nconst tools = getMcpTools();\n// Returns: [agentree_start_trace, agentree_add_input, agentree_add_reasoning_step, agentree_seal_decision]\n\n// Provide to your MCP-enabled agent — Claude will call these tools as it reasons\n```\n\n## Using with Function Calling\n\nFor OpenAI/Anthropic function calling:\n\n```typescript\nimport { getOpenAiFunctionSchema, getAnthropicToolSchema } from \"@ai-agentree/sdk\";\n\n// OpenAI function calling\nconst functions = [getOpenAiFunctionSchema()];\nconst response = await openai.chat.completions.create({\n  model: \"gpt-4\",\n  messages: [...],\n  functions,\n  function_call: { name: \"submit_decision\" },\n});\n\n// Anthropic tool use\nconst tools = [getAnthropicToolSchema()];\nconst response = await anthropic.messages.create({\n  model: \"claude-3-opus-20240229\",\n  messages: [...],\n  tools,\n});\n```\n\n## Transports\n\nThree built-in transports:\n\n| Transport | Description |\n|-----------|-------------|\n| `HttpTransport` | HTTP with retry/backoff (default) |\n| `FileTransport` | JSONL to local file |\n| `ConsoleTransport` | Pretty-prints to stdout |\n| `BufferedTransport` | Wraps any transport; batches events and flushes periodically or at threshold |\n\n## API Reference\n\n### AgentreeClient\n\n| Method | Description |\n|--------|-------------|\n| `startTrace(options)` | Create a new decision trace |\n| `getTrace(traceId)` | Get a trace by ID |\n| `listTraces(options?)` | List traces with filtering |\n| `validateTrace(traceId)` | Validate a trace |\n| `transformTrace(traceId)` | Transform into Argumentree objects |\n| `getValidationStats()` | Get validation statistics |\n\n### TracedAgent\n\n**Constructor options:**\n\n| Option | Default | Description |\n|--------|---------|-------------|\n| `workflowId` | — | Workflow identifier (required) |\n| `entityId` | — | Entity ID (required) |\n| `entityType` | — | Entity type (e.g., `\"order\"`) |\n| `useStructuredPrompt` | `true` | Prepend `DECISION_SYSTEM_PROMPT` (Stage 2) |\n| `useArgumentPrompt` | `false` | Prepend `ARGUMENT_SYSTEM_PROMPT` instead (Stage 3) |\n\n**Methods:**\n\n| Method | Description |\n|--------|-------------|\n| `start()` | Start the trace |\n| `chat(llm, message, options?)` | Send message to LLM with auto-tracing |\n| `end()` | Seal the trace (the backend transforms it automatically at seal — the Decision Packet is available immediately) |\n| `printRaw()` | Print raw LLM response |\n| `exportJson(path)` | Write formatted JSON |\n| `exportText(path)` | Write plain text summary |\n| `exportMarkdown(path)` | Write Markdown |\n| `exportMermaid(path)` | Write Mermaid diagram |\n| `exportJsonl(path)` | Append JSONL line |\n| `stats()` | Return summary statistics |\n\n### Trace\n\n| Method | Description |\n|--------|-------------|\n| `addInput(key, value, options?)` | Add an input snapshot |\n| `addStep(options)` | Add a deliberation step |\n| `addRelation(parentId, childId, options?)` | Link two steps |\n| `addPolicy(policyId, outcome, options?)` | Add policy evaluation |\n| `setDiscussionData(options)` | Set discussion metadata |\n| `seal(options)` | Seal the decision (auto-validates; returns `validation_status` + `quality_score`) |\n| `abort(reason?)` | Abort the trace |\n| `getStatus()` | Get trace status |\n| `validate()` | Manually revalidate (usually not needed — seal auto-validates) |\n| `transform()` | Trigger transformation |\n\n### Constants\n\n- `RECOMMENDED_CATEGORIES` — 21 deliberation categories\n- `EVENT_TYPES` — 18 event types\n- `SIGNIFICANCE_LEVELS` — 5 significance levels\n\n## Differences from Python SDK\n\n| Feature | TypeScript | Python |\n|---------|-----------|--------|\n| `useArgumentPrompt` (Stage 3) | Supported | Supported (`use_argument_prompt`) |\n| `@traced_decision` decorator | Not available | Supported |\n| Context manager (`with`) | Manual `start()`/`end()` | `with TracedAgent(...)` |\n| `STRUCTURED_OUTPUT_SUFFIX` | Exported | Not in `__all__` |\n| Prompt overrides | Supported | Supported |\n","readmeFilename":"README.md"}