Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion agent/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ describe that call; they do not perform I/O or run the durable agent loop.
`provider/model` spelling.
- To select an OpenAI-native model that can use a project Codex subscription,
use an explicit provider: `useModel({ provider: "openai", model: "gpt-5" })`.
- `useTool()` and `useSubagent()` select declared capabilities.
- `useTool()` selects declared capabilities.
- `useSessionData()` reads the current durable session-data snapshot.
- `useMcpServer()` conditionally selects a declared MCP server.
- `useMemory()` reads the projection of a memory resource bound to the
Expand Down
4 changes: 2 additions & 2 deletions agent/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion agent/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@opencomputer/agent",
"version": "0.8.0",
"version": "0.9.0",
"description": "Reactive agent authoring API for OpenComputer.",
"type": "module",
"main": "./dist/index.js",
Expand Down
3 changes: 0 additions & 3 deletions agent/src/index.ts
Original file line number Diff line number Diff line change
Expand Up @@ -729,7 +729,6 @@ interface AgentHooks {
useModel(model: ModelSelection): void;
useTool(tool: string | ResourceReference): void;
useConnection(connection: string | ResourceReference): void;
useSubagent(agent: string | ResourceReference): void;
useSessionData<T extends DataValue>(key: string): T | undefined;
useMcpServer(server: string | ResourceReference): void;
/** Optional: the declaration is extracted at build time, so a host
Expand Down Expand Up @@ -1742,8 +1741,6 @@ export const useConnection = (connection: string | ResourceReference): void =>
*/
export const useService = (service: string): void =>
hooks().useService?.(service);
export const useSubagent = (agent: string | ResourceReference): void =>
hooks().useSubagent(agent);
export const useMcpServer = (server: string | ResourceReference): void =>
hooks().useMcpServer(server);
export function useSessionData<T extends DataValue>(
Expand Down
4 changes: 2 additions & 2 deletions cli/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion cli/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@opencomputer/cli",
"version": "0.7.15",
"version": "0.7.16",
"description": "Build, test, deploy, and share OpenComputer agents as code.",
"type": "module",
"bin": {
Expand Down
4 changes: 0 additions & 4 deletions cli/src/project.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -327,7 +327,6 @@ test("the code-first compiler records hook resources without config files", asyn
useInput,
useMcpServer,
useModel,
useSubagent,
useTool,
} from "@opencomputer/agent";

Expand All @@ -340,7 +339,6 @@ export default function Agent() {
const input = useInput();
useModel("anthropic/claude-sonnet-4.6");
useTool("search-docs");
useSubagent("researcher");
if (input.text?.includes("docs")) useMcpServer(docs);
return "Help with the request.";
}
Expand All @@ -357,7 +355,6 @@ export default function Agent() {
version: number;
tools: string[];
toolModules: string[];
subagents: string[];
connections: string[];
httpConnections: unknown[];
githubConnections: unknown[];
Expand All @@ -376,7 +373,6 @@ export default function Agent() {
tools: ["search-docs"],
gatedTools: [],
toolModules: [],
subagents: ["researcher"],
connections: [],
httpConnections: [],
githubConnections: [],
Expand Down
2 changes: 0 additions & 2 deletions cli/src/project.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3403,7 +3403,6 @@ export const useModel = (model) => hooks().useModel(model);
export const useTool = (tool) => hooks().useTool(tool);
export const useConnection = (connection) => hooks().useConnection(connection);
export const useService = (service) => hooks().useService?.(service);
export const useSubagent = (agent) => hooks().useSubagent(agent);
export const useMcpServer = (server) => hooks().useMcpServer(server);
export const useSessionData = (key) => hooks().useSessionData(key);
`;
Expand Down Expand Up @@ -3823,7 +3822,6 @@ the product or support surface presented to users.
// The result tool and the schema the host validates its output
// against before committing it as the session's result.
...(resultTool ? { resultTool } : {}),
subagents: literalHookIds(agentSource, "useSubagent"),
// Declared HTTP connections AND managed-service grants: the platform
// reads one list, and a provider grant absent from it makes every
// connected mailbox invisible to listServices().
Expand Down
4 changes: 2 additions & 2 deletions create-start/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@opencomputer/create-start",
"version": "0.7.15",
"version": "0.7.16",
"description": "Create a hello-world OpenComputer agent application.",
"type": "module",
"bin": {
Expand All @@ -18,7 +18,7 @@
"node": ">=22.0.0"
},
"dependencies": {
"@opencomputer/cli": "0.7.15"
"@opencomputer/cli": "0.7.16"
},
"publishConfig": {
"access": "public"
Expand Down
9 changes: 1 addition & 8 deletions docs/agents/capabilities.mdx
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
title: "Agent capabilities"
description: "Choose tools, MCP servers, skills, subagents, memory and outbound connections"
description: "Choose tools, MCP servers, skills, memory and outbound connections"
---

Capabilities give an agent something beyond its instructions and model. Choose
Expand All @@ -13,7 +13,6 @@ the narrowest capability that fits the job.
| Connected service | Google services, GitHub, or Linear, on someone's connected account | OpenComputer attaches and refreshes the credential | `useService("gmail")`, then `callService()` in a tool |
| MCP server | A service that already publishes a collection of tools | The remote MCP server | `useMcpServer(server)` |
| Skill | A reusable procedure, checklist, or supporting files | The agent follows the loaded instructions | Place it under `skills/` |
| Subagent | Delegating a focused task to another project agent | The delegated agent | `useSubagent(agentId)` |
| HTTP connection | A constrained authenticated outbound request | OpenComputer sends the declared request | Call `defineConnection().fetch()` inside a tool |
| GitHub App connection | Direct Git and GitHub API access to an installation | The agent sandbox uses a short-lived installation token | `useConnection(github)` |
| Memory | Notes shared across sessions | OpenComputer stores documents; the agent reads and saves through memory tools | `useMemory(memory)` |
Expand All @@ -37,12 +36,6 @@ A tool performs an operation and returns structured data. A
Many agents use both: the skill describes the workflow while tools perform the
individual actions.

## Tool or subagent?

Use a tool for a bounded operation such as fetching an order. Use a
[subagent](/agents/subagents) when the task benefits from its own instructions,
model selection, capabilities, and working context.

## Session data or memory?

[Session data](/agents/session-data) describes the current session and is set
Expand Down
2 changes: 1 addition & 1 deletion docs/agents/events.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -233,7 +233,7 @@ work continued or failed; see [Durability and recovery](/agents/sessions#durabil

| Type | When | `data` |
| --- | --- | --- |
| `agent.rendered` | Your agent function was rendered for a model step | `renderId`, `instructions`, `model`, `enabledTools`, `enabledSubagents`, `enabledMcpServers`, `requiredConnections`, `input`, `tools`, `renderedAt` |
| `agent.rendered` | Your agent function was rendered for a model step | `renderId`, `instructions`, `model`, `enabledTools`, `enabledMcpServers`, `requiredConnections`, `input`, `tools`, `renderedAt` |

One turn can carry several renders, one per model step. The debug inspector
in the [playground](/agents/playground) shows the same data.
Expand Down
1 change: 0 additions & 1 deletion docs/agents/hooks.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@ agent function.
| `useModel(model)` | Selects the model used for the next step | [Models](/agents/models) |
| `useTool(tool)` | Exposes a named or code-defined tool | [Tools](/agents/tools) |
| `useMcpServer(server)` | Exposes tools from a managed HTTPS MCP server | [MCP servers](/agents/mcp) |
| `useSubagent(agent)` | Makes another project agent available for delegation | [Subagents](/agents/subagents) |
| `useSessionData<T>(key)` | Reads a durable value associated with the session | [Session data](/agents/session-data) |
| `useMemory(memory)` | Reads bound memory and selects its permitted tools for this model request | [Memory](/agents/memory) |

Expand Down
3 changes: 1 addition & 2 deletions docs/agents/mental-model.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -117,7 +117,6 @@ Use the narrowest capability that fits the work:
| --- | --- |
| `useTool(tool)` | One typed operation implemented by your project |
| `useMcpServer(server)` | A collection of tools advertised by a remote MCP server |
| `useSubagent(agent)` | Another project agent available for delegation |
| A skill under `skills/` | Reusable instructions and supporting resources |
| `useMemory(memory)` | The bound documents' text and the tools that save to them |

Expand Down Expand Up @@ -169,7 +168,7 @@ Read
Understand durable conversations and runtime events.
</Card>
<Card title="Capabilities" icon="shapes" href="/agents/capabilities">
Choose between tools, MCP servers, skills, and subagents.
Choose between tools, MCP servers, and skills.
</Card>
<Card title="Schedules" icon="clock" href="/agents/schedules">
Start recurring sessions from code-defined cron schedules.
Expand Down
8 changes: 4 additions & 4 deletions docs/agents/overview.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -22,8 +22,8 @@ export default function Agent() {

The exported function is a reactive description of the agent. OpenComputer
renders it for the current input and uses its return value as instructions for
the managed agent loop. Hooks attach the model, tools, MCP servers, and
subagents needed for that render. [Memory](/agents/memory) gives an agent
the managed agent loop. Hooks attach the model, tools, and MCP servers
needed for that render. [Memory](/agents/memory) gives an agent
notes that outlive a session: project-scoped documents read at render, saved
by the model through memory tools, and owned by you.

Expand All @@ -44,7 +44,7 @@ by the model through memory tools, and owned by you.
Create sessions on your server and attach a React interface.
</Card>
<Card title="Capabilities" icon="shapes" href="/agents/capabilities">
Choose between tools, MCP servers, skills, and subagents.
Choose between tools, MCP servers, and skills.
</Card>
<Card title="Secrets" icon="key" href="/agents/secrets">
Declare secret-backed connections without exposing credentials to agents.
Expand Down Expand Up @@ -78,7 +78,7 @@ configured agent to `development`.
## What is available today

- TypeScript projects containing one or more agents
- reactive instructions, model selection, tools, subagents, MCP
- reactive instructions, model selection, tools, MCP
servers, input metadata, session data reads, and document memory
- cloud development with file watching and automatic synchronization
- dashboard and CLI playground sessions
Expand Down
2 changes: 1 addition & 1 deletion docs/agents/quickstart.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -105,6 +105,6 @@ version history.
Add more agents and understand project bindings.
</Card>
<Card title="Reactive agents" icon="code" href="/agents/reactive-agents">
Add models, tools, MCP servers, and subagents.
Add models, tools, and MCP servers.
</Card>
</CardGroup>
7 changes: 2 additions & 5 deletions docs/agents/reactive-agents.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@ needs it.
| `useCurrentInput()` | Alias for `useInput()` |
| `useModel(model)` | Selects a model using `provider/model` notation |
| `useTool(tool)` | Makes a named or code-defined tool available |
| `useSubagent(agent)` | Makes another project agent available as a subagent |
| `useMcpServer(server)` | Attaches a managed HTTPS MCP server |
| `useSessionData(key)` | Reads a value previously stored in the current session |
| `useMemory(memory)` | Reads bound memory and selects its permitted tools |
Expand All @@ -41,7 +40,6 @@ and source metadata.
import {
useInput,
useModel,
useSubagent,
useTool,
} from "@opencomputer/agent";

Expand All @@ -51,7 +49,6 @@ export default function Agent() {

if (input.text?.includes("research")) {
useTool("web-search");
useSubagent("researcher");
}

return "Answer directly. Research and verify when those capabilities exist.";
Expand Down Expand Up @@ -137,5 +134,5 @@ source or the React application.

Continue with [Agent hooks](/agents/hooks), then use the focused guides for
[inputs](/agents/inputs), [models](/agents/models), [tools](/agents/tools),
[MCP servers](/agents/mcp), [skills](/agents/skills),
[subagents](/agents/subagents), and [session data](/agents/session-data).
[MCP servers](/agents/mcp), [skills](/agents/skills), and
[session data](/agents/session-data).
79 changes: 0 additions & 79 deletions docs/agents/subagents.mdx

This file was deleted.

1 change: 0 additions & 1 deletion docs/docs.json
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,6 @@
"agents/tools",
"agents/mcp",
"agents/skills",
"agents/subagents",
"agents/session-data",
"agents/document-memory",
"agents/memory-providers"
Expand Down
6 changes: 0 additions & 6 deletions web/src/managed-agents/DebugInspector.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -396,12 +396,6 @@ export function DebugInspector({
</p>
<ResourceList values={selected.render.enabledMcpServers} />
</div>
<div>
<p className="text-muted-foreground mb-1.5 text-[10px] uppercase">
Subagents
</p>
<ResourceList values={selected.render.enabledSubagents} />
</div>
<div>
<p className="text-muted-foreground mb-1.5 text-[10px] uppercase">
Skills
Expand Down
2 changes: 1 addition & 1 deletion web/src/managed-agents/api.ts
Original file line number Diff line number Diff line change
Expand Up @@ -636,7 +636,7 @@ const renderDebugSchema = z.object({
instructionsHash: z.string(),
instructions: z.string(),
enabledTools: z.array(z.string()),
enabledSubagents: z.array(z.string()),
enabledSubagents: z.array(z.string()).optional(),
requiredConnections: z.array(z.string()),
enabledMcpServers: z.array(z.string()),
input: z.object({ source: z.string(), text: z.string().optional() }),
Expand Down
Loading