@patchr-core/sdk 0.1.4 → 0.1.5

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.
package/CHANGELOG.md CHANGED
@@ -2,17 +2,46 @@
2
2
 
3
3
  Patchr - the infrastructure for autonomous agents that need contracts, evidence trails, and human-safe handoffs.
4
4
 
5
+ ## 0.1.5 - 2026-05-26
6
+
7
+ ### Breaking changes
8
+ - `createProfile(email, name, password)` → `createProfile(email, name)`. Password is no longer accepted or sent to the API. This aligns the SDK with the OAuth-only web signup and removes a confusing security anti-pattern (plaintext password in application code). Update any calls that passed a third argument.
9
+
10
+ ### New
11
+ - `resumeOrchestrator(conversationId, itemId, action, payload?)` — resume a paused run after result selection or a Proxy handoff. Previously documented but not implemented.
12
+ - `mapTool(payload)` — geocode, resolve, or enrich location signals via `/v1/tools/map`. Previously documented but not implemented.
13
+ - `nlpTool(payload)` — classify, extract, or rewrite a text payload via `/v1/tools/nlp`. Previously documented but not implemented.
14
+
15
+ ### Fixes
16
+ - `PatchrClient.fromEnv()` now throws a clear error with a signup URL (`https://www.patchr.co/signup`) when `PATCHR_API_TOKEN` is not set, instead of silently constructing a client with an empty token that produces a silent 401.
17
+ - `PatchrApiError` messages for `401` and `403` now include a direct link to the signup/dashboard page so the recovery path is obvious.
18
+ - Removed `PICUX_API_TOKEN` fallback from `fromEnv()` — internal codename was leaking into the public dist.
19
+ - `homepage` in `package.json` corrected to `https://www.patchr.co` (with www).
20
+ - npm `description` shortened to fit search result display without truncation.
21
+ - npm `keywords` expanded with `agentic`, `ai-agent`, `llm`, `langchain`, `openai-agents`, `autogen`, `proof-card`, `audit`, `human-in-the-loop`, `hitl`, `typescript`, `workflow-automation`.
22
+
23
+ ### Developer experience
24
+ - README reordered: "Get your API token" and Quick Start are now first; SDK-first activation path moved to a dedicated later section.
25
+ - All documented methods now have implementations in source. No more `TypeError: patchr.X is not a function` on documented calls.
26
+ - Error handling section added to README with `PatchrApiError` catch example.
27
+
28
+ ---
29
+
5
30
  ## 0.1.4 - 2026-05-25
6
31
 
7
32
  - Added `createProfile(email, name, password)` so developers can get a starter API token from the SDK.
8
33
  - Added `activateToken(activationToken)` for local/debug activation and emailed activation-link flows.
9
- - Documented the activation path as `createProfile` -> `activateToken` -> `runOrchestrator`, with unactivated starter tokens limited to 5 workflow requests.
34
+ - Documented the activation path as `createProfile` `activateToken` `runOrchestrator`, with unactivated starter tokens limited to 5 workflow requests.
35
+ - Removed the implicit iPhone starter-source injection from the web sandbox; deterministic Hunt smoke tests now require an explicit source URL.
36
+ - Hunt no-result runs now complete with source-attempt evidence; `NEEDS_INPUT` is reserved for source-backed result selection or later workflow inputs.
37
+ - Added `result`, `results`, and `resultCount` Hunt response fields for user-selectable results while preserving existing `selected`, `candidates`, and `candidateCount` fields for full-ranking compatibility.
38
+ - `allowNetwork` now defaults to live-enabled outside the web sandbox; the sandbox explicitly opts out unless the request overrides it.
10
39
 
11
40
  ## 0.1.3 - 2026-05-25
12
41
 
13
42
  - Added a fast sandbox smoke-test path using `Buy me iPhone7 less than 500 dollar` with a source-backed starter listing.
14
43
  - Documented deterministic Hunt testing with a supplied source URL before enabling live marketplace search.
15
- - Updated examples so new developers can confirm a `NEEDS_INPUT` result quickly from the sandbox or SDK.
44
+ - Updated examples so new developers can confirm a source-backed result selection quickly from the sandbox or SDK.
16
45
  - Added release notes for package-store consumers.
17
46
 
18
47
  ## 0.1.2 - 2026-05-24
package/README.md CHANGED
@@ -2,60 +2,35 @@
2
2
 
3
3
  Patchr - the infrastructure for autonomous agents that need contracts, evidence trails, and human-safe handoffs.
4
4
 
5
- The Patchr SDK lets JavaScript and TypeScript apps call the hosted Patchr API for workflow routing, local-service discovery, dispute preparation, human handoffs, MCP/A2A surfaces, and streaming progress updates.
5
+ **Agentic workflow infrastructure** contracts, proof cards, human handoffs, MCP/A2A surfaces.
6
6
 
7
- ## Install
7
+ [![npm](https://img.shields.io/npm/v/@patchr-core/sdk)](https://www.npmjs.com/package/@patchr-core/sdk)
8
+ [![license](https://img.shields.io/npm/l/@patchr-core/sdk)](LICENSE)
8
9
 
9
- ```bash
10
- npm install @patchr-core/sdk
11
- ```
10
+ ## Step 0: Get your API token
11
+
12
+ Sign up free at **[patchr.co/signup](https://www.patchr.co/signup)** — OAuth with Google, GitHub, or Microsoft. No credit card required. Your API token is on the dashboard immediately after signup.
12
13
 
13
14
  ```bash
14
- export PATCHR_API_BASE_URL="https://api.patchr.co"
15
- export PATCHR_API_TOKEN="your_patchr_api_token"
15
+ export PATCHR_API_TOKEN="your_token_here"
16
+ export PATCHR_API_BASE_URL="https://api.patchr.co" # default — can omit
16
17
  ```
17
18
 
18
- ## Developer Activation
19
-
20
- New developers can create a profile directly from the SDK and start testing immediately. Patchr returns a starter API token, sends an activation link to the email address, and keeps unactivated starter tokens limited to 5 workflow requests.
21
-
22
- 0. `createProfile(email, name, password)` returns a starter token.
23
- 1. `activateToken(activationToken)` activates the token after the email link is opened or the activation token is supplied in local/debug mode.
24
- 2. `runOrchestrator(payload)` runs the workflow with the activated token.
25
-
26
- ```ts
27
- import { PatchrClient } from "@patchr-core/sdk";
28
-
29
- const patchr = new PatchrClient();
30
-
31
- const profile = await patchr.createProfile("dev@example.com", "Dev Example", "use-a-real-password") as {
32
- token: string;
33
- activation?: { message?: string; activationToken?: string };
34
- };
35
- const token = profile.token;
36
-
37
- console.log(profile.activation?.message);
38
-
39
- // In production, click the emailed activation link. Local/debug responses may
40
- // include activationToken for automated tests.
41
- const activationToken = profile.activation?.activationToken ?? "";
42
- if (activationToken) {
43
- await patchr.activateToken(activationToken);
44
- }
19
+ ## Install
45
20
 
46
- const activatedPatchr = new PatchrClient({ token });
47
- const run = await activatedPatchr.runOrchestrator({
48
- clientId: "activation_smoke_test",
49
- channel: "sdk",
50
- request: "Buy me iPhone7 less than 500 dollar",
51
- });
21
+ ```bash
22
+ npm install @patchr-core/sdk
52
23
  ```
53
24
 
25
+ Requires Node.js 18+.
26
+
54
27
  ## Quick Start
55
28
 
56
29
  ```ts
57
30
  import { PatchrClient } from "@patchr-core/sdk";
58
31
 
32
+ // Reads PATCHR_API_TOKEN from env — throws a clear error with a signup
33
+ // link if the variable is not set.
59
34
  const patchr = PatchrClient.fromEnv();
60
35
 
61
36
  const run = await patchr.runOrchestrator({
@@ -72,23 +47,28 @@ const run = await patchr.runOrchestrator({
72
47
  ],
73
48
  });
74
49
 
75
- console.log(run.status);
76
- console.log(run.route);
50
+ console.log(run.status); // "ready" | "NEEDS_INPUT" | "proxyEscalated"
51
+ console.log(run.proofCard); // { title, evidenceStatus, confidence, ... }
77
52
  ```
78
53
 
79
- ## Fast Sandbox Smoke Test
54
+ > **No token yet?** `PatchrClient.fromEnv()` throws:
55
+ > ```
56
+ > Error: PATCHR_API_TOKEN is not set.
57
+ > Get a free API token at https://www.patchr.co/signup
58
+ > Then: export PATCHR_API_TOKEN=your_token
59
+ > ```
80
60
 
81
- Before wiring code, open the hosted sandbox and click the Hunt example:
61
+ ## Sandbox first (no API token needed)
82
62
 
83
- https://patchr.co/sandbox
63
+ Before writing code, try the hosted sandbox to see what a real run looks like:
84
64
 
85
- The starter request is:
65
+ **[patchr.co/sandbox](https://www.patchr.co/sandbox)**
86
66
 
87
- ```text
88
- Buy me iPhone7 less than 500 dollar
89
- ```
67
+ Pick a scenario, send a request, and watch the orchestrator coordinate Hunt, Resolve, Proxy, and Pay in real time — no signup required.
68
+
69
+ ## Fast Sandbox Smoke Test
90
70
 
91
- The sandbox includes a small source-backed listing so a first Hunt run can return options quickly even when live marketplace pages are slow or blocked. For SDK smoke tests, you can do the same by passing a known source URL:
71
+ For CI or local testing without hitting live marketplaces, supply a source URL so Hunt has a known result:
92
72
 
93
73
  ```ts
94
74
  const smoke = await patchr.runOrchestrator({
@@ -103,25 +83,12 @@ const smoke = await patchr.runOrchestrator({
103
83
  allowNetwork: false,
104
84
  });
105
85
 
106
- console.log(smoke.status); // usually NEEDS_INPUT when options are ready to choose
86
+ console.log(smoke.status); // "NEEDS_INPUT" source-backed result ready to select
107
87
  ```
108
88
 
109
- Remove `urls` and set `allowNetwork` to `true` when you want Patchr to search live marketplaces.
89
+ Remove `urls` and omit `allowNetwork` to enable live marketplace search.
110
90
 
111
- Typical response:
112
-
113
- ```json
114
- {
115
- "status": "ready",
116
- "route": ["resolve", "bridge"],
117
- "results": {
118
- "resolve": { "claimDraft": { "summary": "Damaged goods claim" } },
119
- "bridge": { "contactPlan": { "primary": { "type": "merchantSupport" } } }
120
- }
121
- }
122
- ```
123
-
124
- ## Streaming Progress
91
+ ## Streaming progress
125
92
 
126
93
  ```ts
127
94
  for await (const event of patchr.streamOrchestrator({
@@ -141,46 +108,154 @@ for await (const event of patchr.streamOrchestrator({
141
108
  }
142
109
  ```
143
110
 
144
- Patchr emits `progress` events during quiet periods and `handoff` events when it starts human-facing work, such as calling a mechanic for availability or preparing case documents.
111
+ Event types: `progress` (quiet-period heartbeat), `handoff` (agent starting human-facing work), `terminal` (trace line), `final` (complete result).
112
+
113
+ ## Resuming a paused run
145
114
 
146
- ## Common Requests
115
+ When a run returns `status: "NEEDS_INPUT"` (result selection) or `status: "proxyEscalated"` (human handoff required), resume it after the human step completes:
147
116
 
148
117
  ```ts
149
- await patchr.runOrchestrator({
150
- clientId: "storefront_demo",
151
- channel: "sdk",
152
- conversationId: "conv_shopping_001",
153
- request: "Buy me iPhone7 less than 500 dollar",
154
- });
118
+ // First run — paused for result selection
119
+ const run = await patchr.runOrchestrator({ ... });
120
+ // run.status === "NEEDS_INPUT"
121
+ // run.decisionTree.paths has the ranked options
122
+
123
+ // Resume after the user selects a result
124
+ const resumed = await patchr.resumeOrchestrator(
125
+ run.conversationId, // from the original run
126
+ run.results.hunt.selected.candidateId,
127
+ "select",
128
+ );
129
+ ```
155
130
 
131
+ ## Common scenarios
132
+
133
+ ```ts
134
+ // Disputed claim
156
135
  await patchr.runOrchestrator({
157
136
  clientId: "support_ops_demo",
158
137
  channel: "sdk",
159
138
  conversationId: "conv_ticket_dispute_001",
160
139
  request: "Dispute ticket ZD-44291: airline charged me twice and closed the refund case.",
161
140
  });
141
+
142
+ // Vendor due diligence workflow template
143
+ await patchr.runWorkflowTemplate("vendorDueDiligence", {
144
+ request: "Run due diligence on Acme Supply Co. for Q3 onboarding",
145
+ metadata: {
146
+ vendorName: "Acme Supply Co.",
147
+ website: "https://acme.example",
148
+ jurisdiction: "US",
149
+ policyRules: ["priceVarianceUnder5pct", "noSanctionedEntities"],
150
+ },
151
+ });
152
+
153
+ // Job offer verification
154
+ await patchr.runWorkflowTemplate("fakeJobVerification", {
155
+ request: "Verify this recruiter claiming to be from a Fortune 500",
156
+ metadata: { recruiterName: "Jane Smith", companyName: "Acme Corp", fees: true },
157
+ });
158
+ ```
159
+
160
+ ## Developer Activation
161
+
162
+ If you need to create a Patchr account programmatically (CI pipelines, onboarding flows), use `createProfile`. For interactive use, sign up at [patchr.co/signup](https://www.patchr.co/signup) instead — it's faster.
163
+
164
+ ```ts
165
+ const patchr = new PatchrClient(); // no token yet
166
+
167
+ const profile = await patchr.createProfile("dev@example.com", "Dev Example") as {
168
+ token: string;
169
+ activation?: { message?: string; activationToken?: string };
170
+ };
171
+
172
+ // Patchr sends an activation email. Click it to lift the 5-request limit.
173
+ // In local/debug mode, the response includes activationToken for automated tests:
174
+ const activationToken = profile.activation?.activationToken;
175
+ if (activationToken) {
176
+ await patchr.activateToken(activationToken);
177
+ }
178
+
179
+ const activatedPatchr = new PatchrClient({ token: profile.token });
180
+ const run = await activatedPatchr.runOrchestrator({
181
+ clientId: "activation_smoke_test",
182
+ channel: "sdk",
183
+ request: "Buy me iPhone7 less than 500 dollar",
184
+ });
162
185
  ```
163
186
 
164
- ## Useful Methods
187
+ > **Activation limit:** Unactivated starter tokens are limited to 5 workflow requests. After the 5th request you will receive a `429` error. Click the activation link in your email, or visit [patchr.co/dashboard](https://www.patchr.co/dashboard) to manage your token.
188
+
189
+ ## All methods
165
190
 
166
191
  ```ts
192
+ // Protocol discovery
167
193
  await patchr.health();
168
- await patchr.createProfile(email, name, password);
169
- await patchr.activateToken(activationToken);
194
+ await patchr.apiStatus();
170
195
  await patchr.manifest();
171
196
  await patchr.protocolMap();
197
+ await patchr.listSchemas();
198
+ await patchr.getSchema(schemaId);
199
+
200
+ // Workflow templates
201
+ await patchr.listWorkflowTemplates();
202
+ await patchr.getWorkflowTemplate(templateId);
203
+ await patchr.runWorkflowTemplate(templateId, payload);
204
+
205
+ // Orchestrator
172
206
  await patchr.runOrchestrator(payload);
173
- await patchr.resumeOrchestrator(conversationId, itemId, action, payload);
174
- await patchr.mapTool(payload);
175
- await patchr.nlpTool(payload);
207
+ await patchr.resumeOrchestrator(conversationId, itemId, action, payload?);
208
+ for await (const event of patchr.streamOrchestrator(payload)) { ... }
209
+
210
+ // Tools
211
+ await patchr.mapTool(payload); // geocode / location enrichment
212
+ await patchr.nlpTool(payload); // classify / extract / rewrite
213
+
214
+ // A2A / Tasks / Proof
215
+ await patchr.createA2AEnvelope(payload);
216
+ await patchr.createTask(payload);
217
+ await patchr.createProofPack(payload);
218
+
219
+ // Developer activation
220
+ await patchr.createProfile(email, name);
221
+ await patchr.activateToken(activationToken);
176
222
  ```
177
223
 
178
- Default API base URL: `https://api.patchr.co`.
224
+ Default API base URL: `https://api.patchr.co`
225
+
226
+ ## Error handling
227
+
228
+ ```ts
229
+ import { PatchrApiError } from "@patchr-core/sdk";
230
+
231
+ try {
232
+ const run = await patchr.runOrchestrator({ request: "..." });
233
+ } catch (err) {
234
+ if (err instanceof PatchrApiError) {
235
+ console.error(err.status); // 401, 429, 500, etc.
236
+ console.error(err.message); // includes signup/upgrade link for 401/403
237
+ console.error(err.payload); // raw API error response
238
+ }
239
+ }
240
+ ```
241
+
242
+ Error messages for `401` and `403` include a direct link to [patchr.co/signup](https://www.patchr.co/signup) so the path forward is always clear.
243
+
244
+ ## Links
245
+
246
+ - **Signup** — [patchr.co/signup](https://www.patchr.co/signup)
247
+ - **Dashboard** — [patchr.co/dashboard](https://www.patchr.co/dashboard)
248
+ - **API reference** — [patchr.co/api](https://www.patchr.co/api)
249
+ - **Sandbox** — [patchr.co/sandbox](https://patchr.co/sandbox)
250
+ - **Changelog** — [CHANGELOG.md](CHANGELOG.md)
251
+ - **Issues** — [github.com/orepos/Patchr/issues](https://github.com/orepos/Patchr/issues)
179
252
 
180
253
  ## Changelog
181
254
 
182
- `0.1.4` adds SDK developer activation: `createProfile`, emailed activation links, `activateToken`, and a 5-request limit for unactivated starter tokens.
255
+ `0.1.5` removes password from `createProfile` (email + name only, consistent with OAuth web signup); adds `resumeOrchestrator`, `mapTool`, `nlpTool` implementations; `fromEnv()` throws a clear error with signup URL when `PATCHR_API_TOKEN` is not set; 401/403 errors include a signup link; removes internal `PICUX_API_TOKEN` fallback; expands npm keywords; fixes homepage URL.
256
+
257
+ `0.1.4` — adds `createProfile` and `activateToken` for SDK-first developer activation; 5-request unactivated token limit.
183
258
 
184
- `0.1.3` adds a fast sandbox smoke test for Hunt, the `Buy me iPhone7 less than 500 dollar` starter example, and clearer deterministic SDK testing docs.
259
+ `0.1.3` deterministic Hunt smoke test with supplied source URL.
185
260
 
186
- See `CHANGELOG.md` in the npm package for full release notes.
261
+ See [CHANGELOG.md](CHANGELOG.md) for full release notes.
package/dist/index.d.ts CHANGED
@@ -18,6 +18,17 @@ export declare class PatchrClient {
18
18
  readonly token: string;
19
19
  private readonly fetchImpl;
20
20
  constructor(options?: PatchrClientOptions);
21
+ /**
22
+ * Build a PatchrClient from environment variables.
23
+ *
24
+ * Reads PATCHR_API_BASE_URL (optional) and PATCHR_API_TOKEN (required).
25
+ * Throws a clear error with a signup link when the token is absent so
26
+ * developers know exactly what to do rather than hitting a silent 401.
27
+ *
28
+ * @example
29
+ * // Set PATCHR_API_TOKEN=your_token in your shell or .env, then:
30
+ * const patchr = PatchrClient.fromEnv();
31
+ */
21
32
  static fromEnv(env?: Record<string, string | undefined>): PatchrClient;
22
33
  request<T = JsonValue>(method: string, path: string, payload?: JsonObject | null): Promise<T>;
23
34
  get<T = JsonValue>(path: string, query?: JsonObject): Promise<T>;
@@ -31,10 +42,54 @@ export declare class PatchrClient {
31
42
  listWorkflowTemplates(): Promise<JsonValue>;
32
43
  getWorkflowTemplate(templateId: string): Promise<JsonValue>;
33
44
  runWorkflowTemplate(templateId: string, payload: JsonObject): Promise<JsonValue>;
34
- createProfile(email: string, name: string, password: string): Promise<JsonValue>;
45
+ /**
46
+ * Create a Patchr developer profile from the SDK.
47
+ *
48
+ * Returns a starter API token immediately. Patchr sends an activation link
49
+ * to the email address — click it to lift the 5-request limit on the starter
50
+ * token. In local/debug mode the response may include an `activationToken`
51
+ * for automated testing without email delivery.
52
+ *
53
+ * Prefer signing up at https://www.patchr.co/signup (OAuth, no email
54
+ * required) when you are working interactively. Use `createProfile` when you
55
+ * need programmatic account creation in a CI or onboarding flow.
56
+ */
57
+ createProfile(email: string, name: string): Promise<JsonValue>;
58
+ /**
59
+ * Activate a starter token using the token from the emailed link, or the
60
+ * `activationToken` returned in local/debug responses.
61
+ */
35
62
  activateToken(activationToken: string): Promise<JsonValue>;
63
+ /**
64
+ * Run a workflow through the Patchr orchestrator.
65
+ *
66
+ * The orchestrator routes the request through Hunt, Resolve, Bridge, Proxy,
67
+ * and Pay domains as needed and returns a proof card at the end of the run.
68
+ */
36
69
  runOrchestrator(payload: JsonObject): Promise<JsonValue>;
70
+ /**
71
+ * Resume a paused orchestrator run — e.g. after a result selection or a
72
+ * Proxy handoff has been completed.
73
+ *
74
+ * @param conversationId The conversationId from the original run response.
75
+ * @param itemId The itemId or resultId to resume from.
76
+ * @param action The resume action: "select", "confirm", "reject", or "handoffComplete".
77
+ * @param payload Additional context for the resume step.
78
+ */
79
+ resumeOrchestrator(conversationId: string, itemId: string, action: string, payload?: JsonObject): Promise<JsonValue>;
80
+ /**
81
+ * Stream a workflow run as NDJSON events.
82
+ * Emits `progress`, `handoff`, `terminal`, and `final` event types.
83
+ */
37
84
  streamOrchestrator(payload: JsonObject): AsyncGenerator<JsonObject>;
85
+ /**
86
+ * Run the Map tool — geocode, resolve, or enrich location signals.
87
+ */
88
+ mapTool(payload: JsonObject): Promise<JsonValue>;
89
+ /**
90
+ * Run the NLP tool — classify, extract, or rewrite a text payload.
91
+ */
92
+ nlpTool(payload: JsonObject): Promise<JsonValue>;
38
93
  createA2AEnvelope(payload: JsonObject): Promise<JsonValue>;
39
94
  createTask(payload: JsonObject): Promise<JsonValue>;
40
95
  createProofPack(payload: JsonObject): Promise<JsonValue>;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,SAAS,EAAE,CAAC;AACjE,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAEF,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;gBAEhB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;CAM/C;AAED,qBAAa,YAAY;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,GAAE,mBAAwB;IAS7C,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,YAAY;IAShE,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IA4BnG,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAIhE,IAAI,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAInE,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAI5B,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC;IAI/B,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAI9B,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAIjC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAIjC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI/C,qBAAqB,IAAI,OAAO,CAAC,SAAS,CAAC;IAI3C,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3D,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAIhF,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAIhF,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI1D,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAIjD,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IA8C1E,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAI1D,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAInD,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;CAGzD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,CAAC;AAC7D,MAAM,MAAM,SAAS,GAAG,aAAa,GAAG,UAAU,GAAG,SAAS,EAAE,CAAC;AACjE,MAAM,MAAM,UAAU,GAAG;IAAE,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,mBAAmB,GAAG;IAChC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,OAAO,KAAK,CAAC;CACtB,CAAC;AAKF,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,SAAS,CAAC;gBAEhB,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS;CAsB/C;AAED,qBAAa,YAAY;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAe;gBAE7B,OAAO,GAAE,mBAAwB;IAS7C;;;;;;;;;;OAUG;IACH,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,GAAG,YAAY;IAoBhE,OAAO,CAAC,CAAC,GAAG,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC;IA4BnG,GAAG,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAIhE,IAAI,CAAC,CAAC,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC;IAMnE,MAAM,IAAI,OAAO,CAAC,SAAS,CAAC;IAI5B,SAAS,IAAI,OAAO,CAAC,SAAS,CAAC;IAI/B,QAAQ,IAAI,OAAO,CAAC,SAAS,CAAC;IAI9B,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAIjC,WAAW,IAAI,OAAO,CAAC,SAAS,CAAC;IAIjC,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAM/C,qBAAqB,IAAI,OAAO,CAAC,SAAS,CAAC;IAI3C,mBAAmB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI3D,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAMhF;;;;;;;;;;;OAWG;IACH,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAI9D;;;OAGG;IACH,aAAa,CAAC,eAAe,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC;IAM1D;;;;;OAKG;IACH,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAIxD;;;;;;;;OAQG;IACH,kBAAkB,CAChB,cAAc,EAAE,MAAM,EACtB,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,MAAM,EACd,OAAO,CAAC,EAAE,UAAU,GACnB,OAAO,CAAC,SAAS,CAAC;IASrB;;;OAGG;IACI,kBAAkB,CAAC,OAAO,EAAE,UAAU,GAAG,cAAc,CAAC,UAAU,CAAC;IAgD1E;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAIhD;;OAEG;IACH,OAAO,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAMhD,iBAAiB,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAI1D,UAAU,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;IAInD,eAAe,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,SAAS,CAAC;CAGzD"}
package/dist/index.js CHANGED
@@ -1,8 +1,22 @@
1
+ const SIGNUP_URL = "https://www.patchr.co/signup";
2
+ const DEFAULT_BASE_URL = "https://api.patchr.co";
1
3
  export class PatchrApiError extends Error {
2
4
  status;
3
5
  payload;
4
6
  constructor(status, payload) {
5
- super(typeof payload === "object" && payload !== null && "error" in payload ? String(payload.error) : `patchr_api_${status}`);
7
+ const apiMessage = typeof payload === "object" && payload !== null && "error" in payload
8
+ ? String(payload.error)
9
+ : undefined;
10
+ // Surface actionable guidance for auth failures so developers know
11
+ // exactly what to do instead of hitting a silent 401.
12
+ const hint = status === 401
13
+ ? `\nNo valid API token. Get a free token at ${SIGNUP_URL}`
14
+ : status === 403
15
+ ? `\nThis token does not have permission for that resource. Check your plan at ${SIGNUP_URL}`
16
+ : status === 429
17
+ ? "\nRate limit reached. Upgrade your plan or wait for the next billing cycle."
18
+ : "";
19
+ super(`${apiMessage ?? `patchr_api_${status}`}${hint}`);
6
20
  this.name = "PatchrApiError";
7
21
  this.status = status;
8
22
  this.payload = payload;
@@ -13,19 +27,36 @@ export class PatchrClient {
13
27
  token;
14
28
  fetchImpl;
15
29
  constructor(options = {}) {
16
- this.baseUrl = options.baseUrl ?? "https://api.patchr.co";
30
+ this.baseUrl = options.baseUrl ?? DEFAULT_BASE_URL;
17
31
  this.token = options.token ?? "";
18
32
  this.fetchImpl = options.fetch ?? globalThis.fetch;
19
33
  if (!this.fetchImpl) {
20
34
  throw new Error("PatchrClient requires a fetch implementation. Use Node.js 18+ or pass options.fetch.");
21
35
  }
22
36
  }
37
+ /**
38
+ * Build a PatchrClient from environment variables.
39
+ *
40
+ * Reads PATCHR_API_BASE_URL (optional) and PATCHR_API_TOKEN (required).
41
+ * Throws a clear error with a signup link when the token is absent so
42
+ * developers know exactly what to do rather than hitting a silent 401.
43
+ *
44
+ * @example
45
+ * // Set PATCHR_API_TOKEN=your_token in your shell or .env, then:
46
+ * const patchr = PatchrClient.fromEnv();
47
+ */
23
48
  static fromEnv(env) {
24
49
  const processEnv = globalThis.process?.env ?? {};
25
50
  const source = env ?? processEnv;
51
+ const token = source["PATCHR_API_TOKEN"];
52
+ if (!token) {
53
+ throw new Error("PATCHR_API_TOKEN is not set.\n" +
54
+ `Get a free API token at ${SIGNUP_URL}\n` +
55
+ "Then: export PATCHR_API_TOKEN=your_token");
56
+ }
26
57
  return new PatchrClient({
27
- baseUrl: source.PATCHR_API_BASE_URL || source.PICUX_API_BASE_URL || "https://api.patchr.co",
28
- token: source.PATCHR_API_TOKEN || source.PICUX_API_TOKEN || "",
58
+ baseUrl: source["PATCHR_API_BASE_URL"] || DEFAULT_BASE_URL,
59
+ token,
29
60
  });
30
61
  }
31
62
  async request(method, path, payload) {
@@ -59,6 +90,7 @@ export class PatchrClient {
59
90
  post(path, payload) {
60
91
  return this.request("POST", path, payload ?? {});
61
92
  }
93
+ // ─── Protocol discovery ────────────────────────────────────────────────────
62
94
  health() {
63
95
  return this.get("/healthz");
64
96
  }
@@ -77,6 +109,7 @@ export class PatchrClient {
77
109
  getSchema(schemaId) {
78
110
  return this.get(`/v1/schemas/${encodeURIComponent(schemaId)}`);
79
111
  }
112
+ // ─── Workflow templates ────────────────────────────────────────────────────
80
113
  listWorkflowTemplates() {
81
114
  return this.get("/v1/workflows/templates");
82
115
  }
@@ -86,15 +119,60 @@ export class PatchrClient {
86
119
  runWorkflowTemplate(templateId, payload) {
87
120
  return this.post(`/v1/workflows/templates/${encodeURIComponent(templateId)}/run`, payload);
88
121
  }
89
- createProfile(email, name, password) {
90
- return this.post("/v1/profiles", { email, name, password });
122
+ // ─── Developer activation ─────────────────────────────────────────────────
123
+ /**
124
+ * Create a Patchr developer profile from the SDK.
125
+ *
126
+ * Returns a starter API token immediately. Patchr sends an activation link
127
+ * to the email address — click it to lift the 5-request limit on the starter
128
+ * token. In local/debug mode the response may include an `activationToken`
129
+ * for automated testing without email delivery.
130
+ *
131
+ * Prefer signing up at https://www.patchr.co/signup (OAuth, no email
132
+ * required) when you are working interactively. Use `createProfile` when you
133
+ * need programmatic account creation in a CI or onboarding flow.
134
+ */
135
+ createProfile(email, name) {
136
+ return this.post("/v1/profiles", { email, name });
91
137
  }
138
+ /**
139
+ * Activate a starter token using the token from the emailed link, or the
140
+ * `activationToken` returned in local/debug responses.
141
+ */
92
142
  activateToken(activationToken) {
93
143
  return this.post("/v1/profiles/activate", { activationToken });
94
144
  }
145
+ // ─── Orchestrator ─────────────────────────────────────────────────────────
146
+ /**
147
+ * Run a workflow through the Patchr orchestrator.
148
+ *
149
+ * The orchestrator routes the request through Hunt, Resolve, Bridge, Proxy,
150
+ * and Pay domains as needed and returns a proof card at the end of the run.
151
+ */
95
152
  runOrchestrator(payload) {
96
153
  return this.post("/v1/orchestrator/run", payload);
97
154
  }
155
+ /**
156
+ * Resume a paused orchestrator run — e.g. after a result selection or a
157
+ * Proxy handoff has been completed.
158
+ *
159
+ * @param conversationId The conversationId from the original run response.
160
+ * @param itemId The itemId or resultId to resume from.
161
+ * @param action The resume action: "select", "confirm", "reject", or "handoffComplete".
162
+ * @param payload Additional context for the resume step.
163
+ */
164
+ resumeOrchestrator(conversationId, itemId, action, payload) {
165
+ return this.post("/v1/orchestrator/resume", {
166
+ conversationId,
167
+ itemId,
168
+ action,
169
+ ...(payload ?? {}),
170
+ });
171
+ }
172
+ /**
173
+ * Stream a workflow run as NDJSON events.
174
+ * Emits `progress`, `handoff`, `terminal`, and `final` event types.
175
+ */
98
176
  async *streamOrchestrator(payload) {
99
177
  const headers = new Headers({ Accept: "application/x-ndjson", "Content-Type": "application/json" });
100
178
  if (this.token) {
@@ -138,6 +216,20 @@ export class PatchrClient {
138
216
  yield finalEvent;
139
217
  }
140
218
  }
219
+ // ─── Tools ────────────────────────────────────────────────────────────────
220
+ /**
221
+ * Run the Map tool — geocode, resolve, or enrich location signals.
222
+ */
223
+ mapTool(payload) {
224
+ return this.post("/v1/tools/map", payload);
225
+ }
226
+ /**
227
+ * Run the NLP tool — classify, extract, or rewrite a text payload.
228
+ */
229
+ nlpTool(payload) {
230
+ return this.post("/v1/tools/nlp", payload);
231
+ }
232
+ // ─── A2A / Tasks / Proof ──────────────────────────────────────────────────
141
233
  createA2AEnvelope(payload) {
142
234
  return this.post("/v1/a2a/envelopes", payload);
143
235
  }
@@ -148,6 +240,7 @@ export class PatchrClient {
148
240
  return this.post("/v1/audit/proofPacks", payload);
149
241
  }
150
242
  }
243
+ // ─── Helpers ──────────────────────────────────────────────────────────────────
151
244
  function joinUrl(baseUrl, path) {
152
245
  return `${baseUrl.replace(/\/+$/, "")}/${path.replace(/^\/+/, "")}`;
153
246
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@patchr-core/sdk",
3
- "version": "0.1.4",
4
- "description": "Patchr - the infrastructure for autonomous agents that need contracts, evidence trails, and human-safe handoffs.",
3
+ "version": "0.1.5",
4
+ "description": "Agentic workflow SDK proof cards, contracts, human handoffs, MCP/A2A",
5
5
  "type": "module",
6
6
  "license": "Apache-2.0",
7
- "homepage": "https://patchr.co",
7
+ "homepage": "https://www.patchr.co",
8
8
  "repository": {
9
9
  "type": "git",
10
10
  "url": "git+https://github.com/orepos/Patchr.git",
@@ -16,10 +16,24 @@
16
16
  "keywords": [
17
17
  "patchr",
18
18
  "sdk",
19
+ "agentic",
20
+ "agentic-workflow",
21
+ "ai-agent",
22
+ "llm",
23
+ "orchestrator",
19
24
  "mcp",
20
25
  "a2a",
26
+ "langchain",
27
+ "openai-agents",
28
+ "autogen",
29
+ "proof-card",
30
+ "audit",
31
+ "human-in-the-loop",
32
+ "hitl",
21
33
  "agents",
22
- "workflows"
34
+ "workflows",
35
+ "typescript",
36
+ "workflow-automation"
23
37
  ],
24
38
  "main": "./dist/index.js",
25
39
  "types": "./dist/index.d.ts",