{"_id":"@cognitiondesk/agent-runtime","name":"@cognitiondesk/agent-runtime","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@cognitiondesk/agent-runtime","version":"0.1.0","description":"Agent execution runtime for CognitionDesk — wraps @cognitiondesk/client with agent CRUD, model selection, invocation, streaming, and usage metrics. Tier 2 package.","keywords":["cognitiondesk","agent","runtime","ai","orchestration","assistant"],"license":"MIT","type":"module","publishConfig":{"access":"public","registry":"https://registry.npmjs.org/"},"main":"./src/index.js","module":"./src/index.js","exports":{".":{"import":"./src/index.js","require":"./src/index.js"}},"scripts":{"build":"vite build","dev":"vite build --watch"},"peerDependencies":{"@cognitiondesk/client":">=0.1.0"},"peerDependenciesMeta":{"@cognitiondesk/client":{"optional":true}},"devDependencies":{"vite":"^6.0.0"},"_id":"@cognitiondesk/agent-runtime@0.1.0","gitHead":"5cbcf45eee62da13e54d31e9f4f07ebf4e111d03","_nodeVersion":"22.18.0","_npmVersion":"10.9.3","dist":{"integrity":"sha512-23umurxgsarMomScOr5Dce2rYIJ5MLGSTlpZWD9XS+jWr8rsxpLuBUqlmpTc28IavJH7LslOz7rz+aE3J9KdoA==","shasum":"15fa7a529a199adeec79bc4ab2c423a74968f612","tarball":"https://registry.npmjs.org/@cognitiondesk/agent-runtime/-/agent-runtime-0.1.0.tgz","fileCount":7,"unpackedSize":34343,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIB+NLsCGfEM0ms+XvmXfUds1gojlUdtQh3YNa4hYG6kaAiEA5uQZIHvuGkzKd/K13I9oYJJZN1HmRDQ2b4n8SWQ5zXk="}]},"_npmUser":{"name":"lucilo","email":"lucilo@gmail.com"},"directories":{},"maintainers":[{"name":"lucilo","email":"lucilo@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/agent-runtime_0.1.0_1782358484708_0.06372541406455867"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-25T03:34:44.583Z","0.1.0":"2026-06-25T03:34:44.840Z","modified":"2026-06-25T03:34:45.043Z"},"maintainers":[{"name":"lucilo","email":"lucilo@gmail.com"}],"description":"Agent execution runtime for CognitionDesk — wraps @cognitiondesk/client with agent CRUD, model selection, invocation, streaming, and usage metrics. Tier 2 package.","keywords":["cognitiondesk","agent","runtime","ai","orchestration","assistant"],"license":"MIT","readme":"# @cognitiondesk/agent-runtime\r\n\r\nAgent execution runtime for CognitionDesk. Wraps `@cognitiondesk/client` with agent CRUD, model selection, invocation, streaming, and usage metrics.\r\n\r\n**Tier 2 package** — builds on `@cognitiondesk/client` (optional peer dep). Uses **no** `@mounaji_npm/*` packages, keeping it reusable by any consumer.\r\n\r\n---\r\n\r\n## Install\r\n\r\n```bash\r\nnpm install @cognitiondesk/agent-runtime\r\n```\r\n\r\nIf you want real backend calls (not mock mode), also install the SDK:\r\n\r\n```bash\r\nnpm install @cognitiondesk/agent-runtime @cognitiondesk/client\r\n```\r\n\r\n---\r\n\r\n## Quick start\r\n\r\n```js\r\nimport { createAgentRuntime } from '@cognitiondesk/agent-runtime';\r\n\r\nconst runtime = await createAgentRuntime({\r\n  backendUrl: 'https://api.cognitiondesk.com',\r\n  authToken: firebaseToken,   // or apiKey\r\n});\r\n\r\nconst agents  = await runtime.listAgents();\r\nconst agent   = await runtime.createAgent({ name: 'Copilot', model: 'gpt-4o' });\r\nconst reply   = await runtime.invokeAgent(agent.id, 'Summarize this document');\r\nconst models  = await runtime.listModels();\r\nconst usage   = await runtime.getUsage();\r\n```\r\n\r\n---\r\n\r\n## API\r\n\r\n### `createAgentRuntime(opts) → Promise<AgentRuntime>`\r\n\r\n| Option | Type | Description |\r\n|---|---|---|\r\n| `backendUrl` | `string` | CognitionDesk backend URL |\r\n| `authToken` | `string` | Firebase bearer token |\r\n| `apiKey` | `string` | CognitionDesk API key |\r\n| `getAuthToken` | `() => Promise<string>` | Async token provider |\r\n| `getApiKey` | `() => Promise<string>` | Async key provider |\r\n| `mock` | `boolean` | Force mock mode (no backend) |\r\n\r\n### `AgentRuntime` methods\r\n\r\n| Method | Returns | Description |\r\n|---|---|---|\r\n| `listAgents()` | `AgentActor[]` | All agents for the current user |\r\n| `listSystemAgents()` | `AgentActor[]` | Pre-built system agents |\r\n| `getAgent(id)` | `AgentActor \\| null` | Single agent by ID |\r\n| `createAgent(data)` | `AgentActor` | Create a new agent |\r\n| `updateAgent(id, updates)` | `AgentActor` | Full update |\r\n| `patchAgent(id, updates)` | `AgentActor` | Partial update |\r\n| `listModels()` | `Model[]` | Available models from catalog |\r\n| `getProviderConfig()` | `object` | Masked provider config |\r\n| `setProviderConfig(config)` | `object` | Update provider config |\r\n| `invokeAgent(id, prompt, opts)` | `string` | Invoke agent, get text |\r\n| `streamAgent(id, prompt, opts)` | `AsyncGenerator` | Stream agent events |\r\n| `getUsage()` | `object` | Current usage + plan |\r\n| `getUsageMetrics(params)` | `object` | Metrics with model breakdown |\r\n| `listWorkflows(filters)` | `Workflow[]` | List workflows |\r\n| `createWorkflow(data)` | `Workflow` | Create a workflow |\r\n| `listTasks(filters)` | `Task[]` | List tasks |\r\n| `createTask(data)` | `Task` | Create a task |\r\n| `updateTask(id, updates)` | `Task` | Update a task |\r\n\r\n### `toAgentActor(assistant) → AgentActor`\r\n\r\nConverts a CognitionDesk assistant to a neutral `AgentActor` shape (compatible with `@mounaji_npm/forum-contracts` Actor model but does not depend on it).\r\n\r\n---\r\n\r\n## Mock mode\r\n\r\nIf `@cognitiondesk/client` is not installed, the runtime automatically falls back to mock mode with demo data. This lets you develop without a backend.\r\n\r\n```js\r\nconst runtime = await createAgentRuntime({ mock: true });\r\nconst agents = await runtime.listAgents(); // 3 demo agents\r\n```\r\n\r\n---\r\n\r\n## Architecture\r\n\r\nThis package is **Tier 2** in the three-tier model:\r\n\r\n```\r\nTier 1 — @mounaji_npm/*          (base: tokens, ui, auth, forum, contracts)\r\nTier 2 — @cognitiondesk/*        (this package + client, widget, orchestration, skills)\r\nTier 3 — apps (ai-forum-app, mounaji-platform, ...)\r\n```\r\n\r\n**Dependency rules:**\r\n- Depends on `@cognitiondesk/client` (optional peer dep).\r\n- Does **not** depend on any `@mounaji_npm/*` package.\r\n- Consumers map the neutral `AgentActor` shape to their own actor schema if needed.\r\n\r\n---\r\n\r\n## License\r\n\r\nMIT","readmeFilename":"README.md","_rev":"1-65177c2506ff6be5956502261a0299b6"}