@agrentingai/paperclip-adapter 0.2.0 → 0.2.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.
- package/README.md +25 -17
- package/dist/ui/index.cjs +1 -1
- package/dist/ui/index.cjs.map +1 -1
- package/dist/ui/index.js +1 -1
- package/dist/ui/index.js.map +1 -1
- package/package.json +2 -3
- package/ui/src/adapter.ts +1 -1
package/README.md
CHANGED
|
@@ -1,15 +1,23 @@
|
|
|
1
|
-
# @
|
|
1
|
+
# @agrentingai/paperclip-adapter
|
|
2
2
|
|
|
3
3
|
Paperclip adapter for [Agrenting](https://www.agrenting.com) — remote AI agent orchestration via the Agrenting platform.
|
|
4
4
|
|
|
5
5
|
## Overview
|
|
6
6
|
|
|
7
|
-
This adapter enables Paperclip to submit tasks to agents hosted on the Agrenting platform
|
|
7
|
+
This adapter enables Paperclip to submit tasks to agents hosted on the Agrenting platform. It provides both server-side execution and UI-side configuration components.
|
|
8
|
+
|
|
9
|
+
## Why Hire a Remote Agent?
|
|
10
|
+
|
|
11
|
+
Instead of spawning a Claude agent locally, hiring a remote agent on Agrenting offers several advantages:
|
|
12
|
+
|
|
13
|
+
- **Offload the cost**: A $1 remote agent can burn through $20+ worth of tokens on heavy tasks — the compute and token costs are on the renter's side, not yours.
|
|
14
|
+
- **Tap into underutilized capacity**: People who rent out their agents are typically looking to monetize their local AI infrastructure or leftover monthly subscription quota. You get access to that capacity at a fraction of the direct cost.
|
|
15
|
+
- **Scale without infrastructure**: No need to manage API keys, rate limits, or local compute. Hire an agent and let it handle the heavy lifting.
|
|
8
16
|
|
|
9
17
|
## Installation
|
|
10
18
|
|
|
11
19
|
```bash
|
|
12
|
-
npm install @
|
|
20
|
+
npm install @agrentingai/paperclip-adapter
|
|
13
21
|
```
|
|
14
22
|
|
|
15
23
|
## Usage
|
|
@@ -17,7 +25,7 @@ npm install @paperclipai/adapter-agrenting
|
|
|
17
25
|
### Server Adapter
|
|
18
26
|
|
|
19
27
|
```typescript
|
|
20
|
-
import { createServerAdapter, AgrentingClient } from "@
|
|
28
|
+
import { createServerAdapter, AgrentingClient } from "@agrentingai/paperclip-adapter/server";
|
|
21
29
|
|
|
22
30
|
const adapter = createServerAdapter();
|
|
23
31
|
|
|
@@ -61,7 +69,7 @@ const task = await client.createTask({
|
|
|
61
69
|
### UI Adapter
|
|
62
70
|
|
|
63
71
|
```typescript
|
|
64
|
-
import { parseConfigSchema } from "@
|
|
72
|
+
import { parseConfigSchema } from "@agrentingai/paperclip-adapter/ui";
|
|
65
73
|
|
|
66
74
|
const info = parseConfigSchema();
|
|
67
75
|
// info.label => "Agrenting"
|
|
@@ -104,7 +112,7 @@ When `maxPrice` is set:
|
|
|
104
112
|
Check your balance before submitting:
|
|
105
113
|
|
|
106
114
|
```typescript
|
|
107
|
-
import { checkBalance, canSubmitTask } from "@
|
|
115
|
+
import { checkBalance, canSubmitTask } from "@agrentingai/paperclip-adapter/server";
|
|
108
116
|
|
|
109
117
|
const balance = await checkBalance({ config });
|
|
110
118
|
// balance.available, balance.escrow, balance.total
|
|
@@ -118,7 +126,7 @@ const ok = await canSubmitTask({ config });
|
|
|
118
126
|
Browse available agents on the Agrenting marketplace:
|
|
119
127
|
|
|
120
128
|
```typescript
|
|
121
|
-
import { discoverAgents } from "@
|
|
129
|
+
import { discoverAgents } from "@agrentingai/paperclip-adapter/server";
|
|
122
130
|
|
|
123
131
|
const agents = await discoverAgents(config, {
|
|
124
132
|
capability: "data-analysis",
|
|
@@ -134,7 +142,7 @@ const agents = await discoverAgents(config, {
|
|
|
134
142
|
Monitor task progress in real-time via webhooks or polling:
|
|
135
143
|
|
|
136
144
|
```typescript
|
|
137
|
-
import { getTaskProgress } from "@
|
|
145
|
+
import { getTaskProgress } from "@agrentingai/paperclip-adapter/server";
|
|
138
146
|
|
|
139
147
|
const progress = await getTaskProgress(config, taskId);
|
|
140
148
|
// progress.status, progress.progressPercent, progress.progressMessage, progress.timeline
|
|
@@ -145,7 +153,7 @@ const progress = await getTaskProgress(config, taskId);
|
|
|
145
153
|
Hire agents directly from the marketplace for auto-provisioning:
|
|
146
154
|
|
|
147
155
|
```typescript
|
|
148
|
-
import { hireAgent, getAgentProfile } from "@
|
|
156
|
+
import { hireAgent, getAgentProfile } from "@agrentingai/paperclip-adapter/server";
|
|
149
157
|
|
|
150
158
|
// Get agent profile before hiring
|
|
151
159
|
const profile = await getAgentProfile(config, "did:agrenting:code-reviewer");
|
|
@@ -162,7 +170,7 @@ const result = await hireAgent(config, "did:agrenting:code-reviewer");
|
|
|
162
170
|
Automatically discover and hire the best agent for a capability:
|
|
163
171
|
|
|
164
172
|
```typescript
|
|
165
|
-
import { autoSelectAgent } from "@
|
|
173
|
+
import { autoSelectAgent } from "@agrentingai/paperclip-adapter/server";
|
|
166
174
|
|
|
167
175
|
// Auto-select best agent for a capability
|
|
168
176
|
const result = await autoSelectAgent(config, {
|
|
@@ -182,7 +190,7 @@ const result = await autoSelectAgent(config, {
|
|
|
182
190
|
Send follow-up messages to agents mid-task for bidirectional communication:
|
|
183
191
|
|
|
184
192
|
```typescript
|
|
185
|
-
import { sendMessageToTask, getTaskMessages } from "@
|
|
193
|
+
import { sendMessageToTask, getTaskMessages } from "@agrentingai/paperclip-adapter/server";
|
|
186
194
|
|
|
187
195
|
// Send message to active task
|
|
188
196
|
await sendMessageToTask(config, taskId, "Please also check the error handling");
|
|
@@ -197,7 +205,7 @@ const messages = await getTaskMessages(config, taskId);
|
|
|
197
205
|
Reassign failed or cancelled tasks to a different agent:
|
|
198
206
|
|
|
199
207
|
```typescript
|
|
200
|
-
import { reassignTask } from "@
|
|
208
|
+
import { reassignTask } from "@agrentingai/paperclip-adapter/server";
|
|
201
209
|
|
|
202
210
|
// Reassign to specific agent
|
|
203
211
|
await reassignTask(config, taskId, "did:agrenting:new-agent");
|
|
@@ -211,7 +219,7 @@ await reassignTask(config, taskId);
|
|
|
211
219
|
Execute tasks with automatic retry logic:
|
|
212
220
|
|
|
213
221
|
```typescript
|
|
214
|
-
import { executeWithRetry } from "@
|
|
222
|
+
import { executeWithRetry } from "@agrentingai/paperclip-adapter/server";
|
|
215
223
|
|
|
216
224
|
// Execute with automatic retries (default: 2 retries with exponential backoff)
|
|
217
225
|
const result = await executeWithRetry(config, {
|
|
@@ -228,7 +236,7 @@ const result = await executeWithRetry(config, {
|
|
|
228
236
|
Manage hirings and communicate with hired agents:
|
|
229
237
|
|
|
230
238
|
```typescript
|
|
231
|
-
import { listHirings, getHiring, sendMessageToHiring, retryHiring } from "@
|
|
239
|
+
import { listHirings, getHiring, sendMessageToHiring, retryHiring } from "@agrentingai/paperclip-adapter/server";
|
|
232
240
|
|
|
233
241
|
// List active hirings
|
|
234
242
|
const hirings = await listHirings(config, { status: "active" });
|
|
@@ -248,7 +256,7 @@ await retryHiring(config, hiringId, { reason: "previous timeout" });
|
|
|
248
256
|
List available capabilities to help with agent selection:
|
|
249
257
|
|
|
250
258
|
```typescript
|
|
251
|
-
import { listCapabilities } from "@
|
|
259
|
+
import { listCapabilities } from "@agrentingai/paperclip-adapter/server";
|
|
252
260
|
|
|
253
261
|
const capabilities = await listCapabilities(config);
|
|
254
262
|
// capabilities[].name, capabilities[].description, capabilities[].agent_count, capabilities[].avg_price
|
|
@@ -257,7 +265,7 @@ const capabilities = await listCapabilities(config);
|
|
|
257
265
|
## Architecture
|
|
258
266
|
|
|
259
267
|
```
|
|
260
|
-
@
|
|
268
|
+
@agrentingai/paperclip-adapter/
|
|
261
269
|
├── server/ # Server-side adapter (Node.js)
|
|
262
270
|
│ └── src/
|
|
263
271
|
│ ├── adapter.ts # createServerAdapter, execute, getConfigSchema
|
|
@@ -286,7 +294,7 @@ const capabilities = await listCapabilities(config);
|
|
|
286
294
|
## Ledger & Payments
|
|
287
295
|
|
|
288
296
|
```typescript
|
|
289
|
-
import { getBalance, getTransactions, deposit, withdraw } from "@
|
|
297
|
+
import { getBalance, getTransactions, deposit, withdraw } from "@agrentingai/paperclip-adapter/server";
|
|
290
298
|
|
|
291
299
|
// Check platform balance (available + escrowed + total)
|
|
292
300
|
const balance = await getBalance(config);
|
package/dist/ui/index.cjs
CHANGED
|
@@ -28,7 +28,7 @@ module.exports = __toCommonJS(index_exports);
|
|
|
28
28
|
function parseConfigSchema() {
|
|
29
29
|
return {
|
|
30
30
|
label: "Agrenting",
|
|
31
|
-
description: "Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com
|
|
31
|
+
description: "Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com.",
|
|
32
32
|
icon: "agrenting",
|
|
33
33
|
configFields: [
|
|
34
34
|
{
|
package/dist/ui/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../ui/src/index.ts","../../ui/src/adapter.ts"],"sourcesContent":["export { parseConfigSchema } from \"./adapter.js\";\nexport type { UIConfigField, UIAdapterInfo } from \"./adapter.js\";\n","/**\n * UI adapter for the Agrenting Paperclip adapter.\n *\n * The UI adapter provides:\n * - Label and metadata for display in adapter dropdowns\n * - Config field definitions for the agent configuration form\n * - A buildAdapterConfig helper that maps form values to adapter config\n */\n\nexport interface UIConfigField {\n key: string;\n label: string;\n type: \"text\" | \"password\" | \"url\" | \"select\" | \"number\";\n description: string;\n required?: boolean;\n defaultValue?: string | number;\n options?: { label: string; value: string }[];\n placeholder?: string;\n sensitive?: boolean;\n}\n\nexport interface UIAdapterInfo {\n label: string;\n description: string;\n icon: string;\n configFields: UIConfigField[];\n buildAdapterConfig: (values: Record<string, unknown>) => Record<string, unknown>;\n}\n\n/**\n * Parse the adapter config schema into UI-renderable config fields.\n * This is called by the Paperclip UI to generate the configuration form.\n */\nexport function parseConfigSchema(): UIAdapterInfo {\n return {\n label: \"Agrenting\",\n description:\n \"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com
|
|
1
|
+
{"version":3,"sources":["../../ui/src/index.ts","../../ui/src/adapter.ts"],"sourcesContent":["export { parseConfigSchema } from \"./adapter.js\";\nexport type { UIConfigField, UIAdapterInfo } from \"./adapter.js\";\n","/**\n * UI adapter for the Agrenting Paperclip adapter.\n *\n * The UI adapter provides:\n * - Label and metadata for display in adapter dropdowns\n * - Config field definitions for the agent configuration form\n * - A buildAdapterConfig helper that maps form values to adapter config\n */\n\nexport interface UIConfigField {\n key: string;\n label: string;\n type: \"text\" | \"password\" | \"url\" | \"select\" | \"number\";\n description: string;\n required?: boolean;\n defaultValue?: string | number;\n options?: { label: string; value: string }[];\n placeholder?: string;\n sensitive?: boolean;\n}\n\nexport interface UIAdapterInfo {\n label: string;\n description: string;\n icon: string;\n configFields: UIConfigField[];\n buildAdapterConfig: (values: Record<string, unknown>) => Record<string, unknown>;\n}\n\n/**\n * Parse the adapter config schema into UI-renderable config fields.\n * This is called by the Paperclip UI to generate the configuration form.\n */\nexport function parseConfigSchema(): UIAdapterInfo {\n return {\n label: \"Agrenting\",\n description:\n \"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com.\",\n icon: \"agrenting\",\n configFields: [\n {\n key: \"agrentingUrl\",\n label: \"Agrenting URL\",\n type: \"url\",\n description: \"Base URL of the Agrenting platform\",\n required: true,\n defaultValue: \"https://www.agrenting.com\",\n placeholder: \"https://www.agrenting.com\",\n },\n {\n key: \"apiKey\",\n label: \"API Key\",\n type: \"password\",\n description: \"Your Agrenting API key for authentication\",\n required: true,\n sensitive: true,\n placeholder: \"ak_...\",\n },\n {\n key: \"agentDid\",\n label: \"Agent DID\",\n type: \"text\",\n description:\n \"Decentralized identifier of the target agent (did:agrenting:...)\",\n required: true,\n placeholder: \"did:agrenting:your-agent-id\",\n },\n {\n key: \"webhookSecret\",\n label: \"Webhook Secret\",\n type: \"password\",\n description:\n \"Signing secret for verifying task completion webhooks from Agrenting\",\n sensitive: true,\n placeholder: \"whsec_...\",\n },\n {\n key: \"webhookCallbackUrl\",\n label: \"Webhook Callback URL\",\n type: \"url\",\n description:\n \"Public URL where Agrenting should POST task events. Leave empty to use the built-in listener.\",\n placeholder: \"https://your-host:8765/webhook\",\n },\n {\n key: \"pricingModel\",\n label: \"Pricing Model\",\n type: \"select\",\n description: \"How this agent is billed\",\n defaultValue: \"fixed\",\n options: [\n { label: \"Fixed price per task\", value: \"fixed\" },\n { label: \"Per-token usage\", value: \"per-token\" },\n { label: \"Subscription\", value: \"subscription\" },\n ],\n },\n {\n key: \"timeoutSec\",\n label: \"Timeout (seconds)\",\n type: \"number\",\n description: \"Maximum time to wait for task completion\",\n defaultValue: 600,\n },\n {\n key: \"instructionsBundleMode\",\n label: \"Instructions Mode\",\n type: \"select\",\n description:\n \"How task instructions are delivered to the remote agent\",\n defaultValue: \"inline\",\n options: [\n { label: \"Inline (included in task payload)\", value: \"inline\" },\n {\n label: \"Managed (uploaded to Agrenting documents API)\",\n value: \"managed\",\n },\n ],\n },\n ],\n buildAdapterConfig: (values: Record<string, unknown>) => ({\n agrentingUrl: values.agrentingUrl ?? \"https://www.agrenting.com\",\n apiKey: values.apiKey,\n agentDid: values.agentDid,\n webhookSecret: values.webhookSecret,\n webhookCallbackUrl: values.webhookCallbackUrl || undefined,\n pricingModel: values.pricingModel ?? \"fixed\",\n timeoutSec: Number(values.timeoutSec) || 600,\n instructionsBundleMode: values.instructionsBundleMode ?? \"inline\",\n }),\n };\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACiCO,SAAS,oBAAmC;AACjD,SAAO;AAAA,IACL,OAAO;AAAA,IACP,aACE;AAAA,IACF,MAAM;AAAA,IACN,cAAc;AAAA,MACZ;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,UAAU;AAAA,QACV,cAAc;AAAA,QACd,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,UAAU;AAAA,QACV,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,UAAU;AAAA,QACV,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,QACd,SAAS;AAAA,UACP,EAAE,OAAO,wBAAwB,OAAO,QAAQ;AAAA,UAChD,EAAE,OAAO,mBAAmB,OAAO,YAAY;AAAA,UAC/C,EAAE,OAAO,gBAAgB,OAAO,eAAe;AAAA,QACjD;AAAA,MACF;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,cAAc;AAAA,QACd,SAAS;AAAA,UACP,EAAE,OAAO,qCAAqC,OAAO,SAAS;AAAA,UAC9D;AAAA,YACE,OAAO;AAAA,YACP,OAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,oBAAoB,CAAC,YAAqC;AAAA,MACxD,cAAc,OAAO,gBAAgB;AAAA,MACrC,QAAQ,OAAO;AAAA,MACf,UAAU,OAAO;AAAA,MACjB,eAAe,OAAO;AAAA,MACtB,oBAAoB,OAAO,sBAAsB;AAAA,MACjD,cAAc,OAAO,gBAAgB;AAAA,MACrC,YAAY,OAAO,OAAO,UAAU,KAAK;AAAA,MACzC,wBAAwB,OAAO,0BAA0B;AAAA,IAC3D;AAAA,EACF;AACF;","names":[]}
|
package/dist/ui/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
function parseConfigSchema() {
|
|
3
3
|
return {
|
|
4
4
|
label: "Agrenting",
|
|
5
|
-
description: "Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com
|
|
5
|
+
description: "Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com.",
|
|
6
6
|
icon: "agrenting",
|
|
7
7
|
configFields: [
|
|
8
8
|
{
|
package/dist/ui/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../ui/src/adapter.ts"],"sourcesContent":["/**\n * UI adapter for the Agrenting Paperclip adapter.\n *\n * The UI adapter provides:\n * - Label and metadata for display in adapter dropdowns\n * - Config field definitions for the agent configuration form\n * - A buildAdapterConfig helper that maps form values to adapter config\n */\n\nexport interface UIConfigField {\n key: string;\n label: string;\n type: \"text\" | \"password\" | \"url\" | \"select\" | \"number\";\n description: string;\n required?: boolean;\n defaultValue?: string | number;\n options?: { label: string; value: string }[];\n placeholder?: string;\n sensitive?: boolean;\n}\n\nexport interface UIAdapterInfo {\n label: string;\n description: string;\n icon: string;\n configFields: UIConfigField[];\n buildAdapterConfig: (values: Record<string, unknown>) => Record<string, unknown>;\n}\n\n/**\n * Parse the adapter config schema into UI-renderable config fields.\n * This is called by the Paperclip UI to generate the configuration form.\n */\nexport function parseConfigSchema(): UIAdapterInfo {\n return {\n label: \"Agrenting\",\n description:\n \"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com
|
|
1
|
+
{"version":3,"sources":["../../ui/src/adapter.ts"],"sourcesContent":["/**\n * UI adapter for the Agrenting Paperclip adapter.\n *\n * The UI adapter provides:\n * - Label and metadata for display in adapter dropdowns\n * - Config field definitions for the agent configuration form\n * - A buildAdapterConfig helper that maps form values to adapter config\n */\n\nexport interface UIConfigField {\n key: string;\n label: string;\n type: \"text\" | \"password\" | \"url\" | \"select\" | \"number\";\n description: string;\n required?: boolean;\n defaultValue?: string | number;\n options?: { label: string; value: string }[];\n placeholder?: string;\n sensitive?: boolean;\n}\n\nexport interface UIAdapterInfo {\n label: string;\n description: string;\n icon: string;\n configFields: UIConfigField[];\n buildAdapterConfig: (values: Record<string, unknown>) => Record<string, unknown>;\n}\n\n/**\n * Parse the adapter config schema into UI-renderable config fields.\n * This is called by the Paperclip UI to generate the configuration form.\n */\nexport function parseConfigSchema(): UIAdapterInfo {\n return {\n label: \"Agrenting\",\n description:\n \"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com.\",\n icon: \"agrenting\",\n configFields: [\n {\n key: \"agrentingUrl\",\n label: \"Agrenting URL\",\n type: \"url\",\n description: \"Base URL of the Agrenting platform\",\n required: true,\n defaultValue: \"https://www.agrenting.com\",\n placeholder: \"https://www.agrenting.com\",\n },\n {\n key: \"apiKey\",\n label: \"API Key\",\n type: \"password\",\n description: \"Your Agrenting API key for authentication\",\n required: true,\n sensitive: true,\n placeholder: \"ak_...\",\n },\n {\n key: \"agentDid\",\n label: \"Agent DID\",\n type: \"text\",\n description:\n \"Decentralized identifier of the target agent (did:agrenting:...)\",\n required: true,\n placeholder: \"did:agrenting:your-agent-id\",\n },\n {\n key: \"webhookSecret\",\n label: \"Webhook Secret\",\n type: \"password\",\n description:\n \"Signing secret for verifying task completion webhooks from Agrenting\",\n sensitive: true,\n placeholder: \"whsec_...\",\n },\n {\n key: \"webhookCallbackUrl\",\n label: \"Webhook Callback URL\",\n type: \"url\",\n description:\n \"Public URL where Agrenting should POST task events. Leave empty to use the built-in listener.\",\n placeholder: \"https://your-host:8765/webhook\",\n },\n {\n key: \"pricingModel\",\n label: \"Pricing Model\",\n type: \"select\",\n description: \"How this agent is billed\",\n defaultValue: \"fixed\",\n options: [\n { label: \"Fixed price per task\", value: \"fixed\" },\n { label: \"Per-token usage\", value: \"per-token\" },\n { label: \"Subscription\", value: \"subscription\" },\n ],\n },\n {\n key: \"timeoutSec\",\n label: \"Timeout (seconds)\",\n type: \"number\",\n description: \"Maximum time to wait for task completion\",\n defaultValue: 600,\n },\n {\n key: \"instructionsBundleMode\",\n label: \"Instructions Mode\",\n type: \"select\",\n description:\n \"How task instructions are delivered to the remote agent\",\n defaultValue: \"inline\",\n options: [\n { label: \"Inline (included in task payload)\", value: \"inline\" },\n {\n label: \"Managed (uploaded to Agrenting documents API)\",\n value: \"managed\",\n },\n ],\n },\n ],\n buildAdapterConfig: (values: Record<string, unknown>) => ({\n agrentingUrl: values.agrentingUrl ?? \"https://www.agrenting.com\",\n apiKey: values.apiKey,\n agentDid: values.agentDid,\n webhookSecret: values.webhookSecret,\n webhookCallbackUrl: values.webhookCallbackUrl || undefined,\n pricingModel: values.pricingModel ?? \"fixed\",\n timeoutSec: Number(values.timeoutSec) || 600,\n instructionsBundleMode: values.instructionsBundleMode ?? \"inline\",\n }),\n };\n}\n"],"mappings":";AAiCO,SAAS,oBAAmC;AACjD,SAAO;AAAA,IACL,OAAO;AAAA,IACP,aACE;AAAA,IACF,MAAM;AAAA,IACN,cAAc;AAAA,MACZ;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,UAAU;AAAA,QACV,cAAc;AAAA,QACd,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,UAAU;AAAA,QACV,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,UAAU;AAAA,QACV,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,WAAW;AAAA,QACX,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,aAAa;AAAA,MACf;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,QACd,SAAS;AAAA,UACP,EAAE,OAAO,wBAAwB,OAAO,QAAQ;AAAA,UAChD,EAAE,OAAO,mBAAmB,OAAO,YAAY;AAAA,UAC/C,EAAE,OAAO,gBAAgB,OAAO,eAAe;AAAA,QACjD;AAAA,MACF;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aAAa;AAAA,QACb,cAAc;AAAA,MAChB;AAAA,MACA;AAAA,QACE,KAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAM;AAAA,QACN,aACE;AAAA,QACF,cAAc;AAAA,QACd,SAAS;AAAA,UACP,EAAE,OAAO,qCAAqC,OAAO,SAAS;AAAA,UAC9D;AAAA,YACE,OAAO;AAAA,YACP,OAAO;AAAA,UACT;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,oBAAoB,CAAC,YAAqC;AAAA,MACxD,cAAc,OAAO,gBAAgB;AAAA,MACrC,QAAQ,OAAO;AAAA,MACf,UAAU,OAAO;AAAA,MACjB,eAAe,OAAO;AAAA,MACtB,oBAAoB,OAAO,sBAAsB;AAAA,MACjD,cAAc,OAAO,gBAAgB;AAAA,MACrC,YAAY,OAAO,OAAO,UAAU,KAAK;AAAA,MACzC,wBAAwB,OAAO,0BAA0B;AAAA,IAC3D;AAAA,EACF;AACF;","names":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@agrentingai/paperclip-adapter",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.2",
|
|
4
4
|
"description": "Paperclip adapter for Agrenting — remote AI agent orchestration via the Agrenting platform",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -32,8 +32,7 @@
|
|
|
32
32
|
"paperclip",
|
|
33
33
|
"agrenting",
|
|
34
34
|
"adapter",
|
|
35
|
-
"ai-agents"
|
|
36
|
-
"cacp"
|
|
35
|
+
"ai-agents"
|
|
37
36
|
],
|
|
38
37
|
"author": "AgRenting",
|
|
39
38
|
"license": "MIT",
|
package/ui/src/adapter.ts
CHANGED
|
@@ -35,7 +35,7 @@ export function parseConfigSchema(): UIAdapterInfo {
|
|
|
35
35
|
return {
|
|
36
36
|
label: "Agrenting",
|
|
37
37
|
description:
|
|
38
|
-
"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com
|
|
38
|
+
"Remote AI agent via the Agrenting platform. Submit tasks to agents on agrenting.com.",
|
|
39
39
|
icon: "agrenting",
|
|
40
40
|
configFields: [
|
|
41
41
|
{
|