agenticros 0.3.0 → 0.3.1
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 +10 -5
- package/dist/__tests__/codex-config.test.d.ts +2 -0
- package/dist/__tests__/codex-config.test.d.ts.map +1 -0
- package/dist/__tests__/codex-config.test.js +76 -0
- package/dist/__tests__/codex-config.test.js.map +1 -0
- package/dist/commands/codex.d.ts +18 -0
- package/dist/commands/codex.d.ts.map +1 -0
- package/dist/commands/codex.js +99 -0
- package/dist/commands/codex.js.map +1 -0
- package/dist/commands/doctor.d.ts.map +1 -1
- package/dist/commands/doctor.js +25 -1
- package/dist/commands/doctor.js.map +1 -1
- package/dist/commands/init.d.ts +2 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +26 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/commands/skills.js +2 -2
- package/dist/commands/skills.js.map +1 -1
- package/dist/index.js +20 -0
- package/dist/index.js.map +1 -1
- package/dist/menu.js +1 -1
- package/dist/menu.js.map +1 -1
- package/dist/util/codex-config.d.ts +56 -0
- package/dist/util/codex-config.d.ts.map +1 -0
- package/dist/util/codex-config.js +326 -0
- package/dist/util/codex-config.js.map +1 -0
- package/package.json +3 -1
- package/runtime/BUNDLE.json +1 -1
- package/runtime/README.md +18 -5
- package/runtime/docs/cli.md +1 -1
- package/runtime/packages/agenticros-claude-code/README.md +18 -8
- package/runtime/packages/agenticros-claude-code/package.json +11 -1
- package/runtime/packages/core/README.md +12 -2
package/runtime/README.md
CHANGED
|
@@ -27,7 +27,7 @@ With AgenticROS, your robot can describe what it sees, follow intent ("go check
|
|
|
27
27
|
- **[OpenClaw](https://openclaw.ai)** — Native gateway plugin with ROS 2 tools, commands, a config UI, a teleop web app, and a skill loader. The flagship integration.
|
|
28
28
|
- **[NVIDIA NemoClaw](https://github.com/NVIDIA/NemoClaw)** — Run AgenticROS inside NemoClaw's OpenShell sandbox with policy-enforced egress and managed NVIDIA inference; ROS 2, RealSense, and rosbridge stay on the host while the plugin runs sandboxed.
|
|
29
29
|
- **[Anthropic Claude](https://www.anthropic.com/claude)** — A single MCP server powers **Claude Code** (terminal), **Claude Desktop** (macOS / Windows), and **Claude Dispatch** (iOS, paired to your Mac). Ask Claude what your robot sees, and it answers with a live camera snapshot and depth reading.
|
|
30
|
-
- **[OpenAI Codex CLI](https://developers.openai.com/codex/)** —
|
|
30
|
+
- **[OpenAI Codex CLI](https://developers.openai.com/codex/)** — Same MCP server as Claude Code. One command registers Codex: `agenticros codex setup` (writes `~/.codex/config.toml` with an absolute path to the MCP binary). Full tool surface: missions, follow-me, find-object, memory. Setup guide: [docs/codex-setup.md](docs/codex-setup.md).
|
|
31
31
|
- **[Google Gemini](https://ai.google.dev/)** — Standalone CLI that uses Gemini function calling against the same ROS 2 tools (no MCP required) — ideal for scripting and headless agents.
|
|
32
32
|
|
|
33
33
|
AgenticROS is built so that new adapters (LangGraph, OpenAI, local models, voice stacks, etc.) can be added without touching the ROS 2 layer. The core transport and tool contract are platform-agnostic; adapters are thin shims that surface those tools to each agent runtime.
|
|
@@ -38,12 +38,13 @@ AgenticROS is built so that new adapters (LangGraph, OpenAI, local models, voice
|
|
|
38
38
|
|
|
39
39
|
- **Core** (`packages/core`): Platform-agnostic ROS2 transport (rosbridge, Zenoh, local, WebRTC), config schema, and shared types. No dependency on any specific AI platform.
|
|
40
40
|
- **Adapters** (`packages/agenticros`, and later others): Implement the contract for each AI platform. The OpenClaw adapter registers tools, commands, and HTTP routes with the OpenClaw gateway and uses the core for all ROS2 communication.
|
|
41
|
-
- `**packages/agenticros-claude-code`** — MCP server for **Claude Code
|
|
41
|
+
- `**packages/agenticros-claude-code`** — MCP server for **Claude Code**, **Claude desktop**, **Dispatch**, and **OpenAI Codex CLI**. See [packages/agenticros-claude-code/README.md](packages/agenticros-claude-code/README.md) and [docs/codex-setup.md](docs/codex-setup.md).
|
|
42
42
|
- `**packages/agenticros-gemini`** — **Gemini CLI**: use Google Gemini to chat with your robot from the terminal (same ROS2 tools, no MCP). See [packages/agenticros-gemini/README.md](packages/agenticros-gemini/README.md).
|
|
43
43
|
|
|
44
44
|
```
|
|
45
45
|
User (messaging app) → OpenClaw Gateway → AgenticROS OpenClaw plugin → Core → ROS2 robots
|
|
46
46
|
Claude (Code / desktop / Dispatch) → agenticros MCP server → Core → ROS2 robots (Zenoh/rosbridge)
|
|
47
|
+
Codex CLI → agenticros MCP server → Core → ROS2 robots (Zenoh/rosbridge)
|
|
47
48
|
Gemini CLI → @agenticros/gemini (function calling) → Core → ROS2 robots
|
|
48
49
|
```
|
|
49
50
|
|
|
@@ -381,13 +382,17 @@ Add `{ "memory": { "enabled": true, "backend": "mem0" } }` to `~/.agenticros/con
|
|
|
381
382
|
|
|
382
383
|
## Skills
|
|
383
384
|
|
|
384
|
-
AgenticROS **skills** are optional packages that add tools and behaviors to the plugin (e.g. `
|
|
385
|
+
AgenticROS **skills** are optional packages that add tools and behaviors to the plugin (e.g. `follow_person`, `find_object`). They are loaded at OpenClaw gateway start. Browse and install from **[skills.agenticros.com](https://skills.agenticros.com)**, or scaffold and publish your own with the CLI.
|
|
385
386
|
|
|
386
387
|
### Managing skills with the CLI
|
|
387
388
|
|
|
388
389
|
The `agenticros skills` command (and the **Manage skills** menu entry) does everything for you: it scans the usual locations for clones, edits `~/.openclaw/openclaw.json`, refreshes the plugin manifest's `contracts.tools` allowlist, and reminds you to bounce the gateway.
|
|
389
390
|
|
|
390
391
|
```bash
|
|
392
|
+
# Install from the marketplace (owner/skill-id ref)
|
|
393
|
+
npx agenticros skills search follow
|
|
394
|
+
npx agenticros skills install chrismatthieu/followme
|
|
395
|
+
|
|
391
396
|
agenticros skills # list registered + cloned-but-unregistered
|
|
392
397
|
agenticros skills discover # interactive picker over candidates on disk
|
|
393
398
|
agenticros skills add <path-or-name> # register a clone (path) or npm package
|
|
@@ -395,7 +400,15 @@ agenticros skills remove <id-or-name> # unregister
|
|
|
395
400
|
agenticros skills sync # refresh OpenClaw contracts.tools allowlist
|
|
396
401
|
```
|
|
397
402
|
|
|
398
|
-
|
|
403
|
+
**Create and publish** a new skill:
|
|
404
|
+
|
|
405
|
+
```bash
|
|
406
|
+
npx agenticros create-skill my-skill --template robot
|
|
407
|
+
cd agenticros-skill-my-skill && npm install && npm run dev
|
|
408
|
+
npx agenticros publish
|
|
409
|
+
```
|
|
410
|
+
|
|
411
|
+
A typical manual install (without the marketplace) looks like:
|
|
399
412
|
|
|
400
413
|
```bash
|
|
401
414
|
# clone whichever skills you want, anywhere near the repo
|
|
@@ -441,7 +454,7 @@ Per-skill behaviour lives under `config.skills.<skillId>` (e.g. `config.skills.f
|
|
|
441
454
|
|
|
442
455
|
### Contract & writing your own skill
|
|
443
456
|
|
|
444
|
-
A skill is a Node package with an `"agenticros": { "id": "..." }` block in `package.json` and a `registerSkill(api, config, context)` export from `main`.
|
|
457
|
+
A skill is a Node package with an `"agenticros": { "id": "..." }` block in `package.json` and a `registerSkill(api, config, context)` export from `main`. Scaffold with `npx agenticros create-skill`, publish to **[skills.agenticros.com](https://skills.agenticros.com)** with `npx agenticros publish`, and install with `npx agenticros skills install <owner/skill-id>` (e.g. `chrismatthieu/followme`). See **[docs/skills.md](docs/skills.md)** for the full contract and **[agenticros-skill-followme](https://github.com/agenticros/agenticros-skill-followme)** ([marketplace listing](https://skills.agenticros.com/chrismatthieu/followme)) as a reference template.
|
|
445
458
|
|
|
446
459
|
## Strategy & vision
|
|
447
460
|
|
package/runtime/docs/cli.md
CHANGED
|
@@ -134,7 +134,7 @@ Read or edit `~/.agenticros/config.json`. Actions:
|
|
|
134
134
|
| `agenticros create-skill <slug> [--template hello\|robot\|camera\|depth]` | Scaffold `./agenticros-skill-<slug>/` in cwd. |
|
|
135
135
|
| `agenticros skills dev [--invoke <tool>] [--live]` | Load the skill locally without OpenClaw. |
|
|
136
136
|
| `agenticros publish [--graduate]` | Validate, push to GitHub, submit to skills.agenticros.com. |
|
|
137
|
-
| `agenticros skills install <owner/skill>` | Install from marketplace (e.g. `
|
|
137
|
+
| `agenticros skills install <owner/skill>` | Install from marketplace (e.g. `chrismatthieu/followme`). |
|
|
138
138
|
| `agenticros skills search <q>` | Search the marketplace. |
|
|
139
139
|
|
|
140
140
|
## Troubleshooting
|
|
@@ -96,9 +96,19 @@ Scope options: `--scope user` (default), `--scope project` (shared via `.mcp.jso
|
|
|
96
96
|
|
|
97
97
|
## Codex CLI (OpenAI)
|
|
98
98
|
|
|
99
|
-
The same MCP server works unmodified with the **OpenAI Codex CLI** — Codex is a vanilla MCP client, and our server speaks the standard
|
|
99
|
+
The same MCP server works unmodified with the **OpenAI Codex CLI** — Codex is a vanilla MCP client, and our server speaks the standard MCP protocol.
|
|
100
100
|
|
|
101
|
-
**Option A — `codex
|
|
101
|
+
**Option A — `agenticros codex setup` (recommended)**
|
|
102
|
+
|
|
103
|
+
```bash
|
|
104
|
+
agenticros codex setup # ~/.codex/config.toml
|
|
105
|
+
agenticros codex setup --project # .codex/config.toml in repo root
|
|
106
|
+
agenticros codex doctor
|
|
107
|
+
```
|
|
108
|
+
|
|
109
|
+
Then start Codex and run `/mcp` — you should see `agenticros` connected. See [docs/codex-setup.md](../../docs/codex-setup.md) for the full guide.
|
|
110
|
+
|
|
111
|
+
**Option B — `codex mcp add`**
|
|
102
112
|
|
|
103
113
|
```bash
|
|
104
114
|
cd /path/to/agenticros
|
|
@@ -106,20 +116,20 @@ codex mcp add agenticros \
|
|
|
106
116
|
-- node "$(pwd)/packages/agenticros-claude-code/dist/index.js"
|
|
107
117
|
```
|
|
108
118
|
|
|
109
|
-
**Option
|
|
119
|
+
**Option C — direct edit of `~/.codex/config.toml`**
|
|
110
120
|
|
|
111
121
|
```toml
|
|
112
122
|
[mcp_servers.agenticros]
|
|
113
|
-
command = "
|
|
114
|
-
args = ["/ABSOLUTE/PATH/TO/agenticros/packages/agenticros-claude-code/dist/index.js"]
|
|
123
|
+
command = "sh"
|
|
124
|
+
args = ["-c", "node /ABSOLUTE/PATH/TO/agenticros/packages/agenticros-claude-code/dist/index.js 2>>/tmp/agenticros-mcp.log"]
|
|
115
125
|
enabled = true
|
|
116
126
|
startup_timeout_sec = 30
|
|
117
127
|
|
|
118
128
|
[mcp_servers.agenticros.env]
|
|
119
|
-
AGENTICROS_ROBOT_NAMESPACE = "
|
|
129
|
+
AGENTICROS_ROBOT_NAMESPACE = ""
|
|
120
130
|
```
|
|
121
131
|
|
|
122
|
-
|
|
132
|
+
Same tools, same tool names, same JSON shapes as in Claude Code; everything in the **Tools** section below applies identically.
|
|
123
133
|
|
|
124
134
|
Two Codex-specific notes:
|
|
125
135
|
|
|
@@ -300,4 +310,4 @@ If `ros2_publish` runs but the robot doesn’t move:
|
|
|
300
310
|
|
|
301
311
|
## Skills
|
|
302
312
|
|
|
303
|
-
Skill packages (e.g. `agenticros-skill-followme`, `agenticros-skill-find`) extend the capability registry with new verbs like `follow_person` and `find_object`. The MCP server reads each skill's `package.json` `agenticros` block (`id`, `capabilities[]`) at startup and surfaces those verbs through `ros2_list_capabilities` and `run_mission` — no per-skill MCP tool needed. To register a skill for this adapter, install it with `agenticros skills install <
|
|
313
|
+
Skill packages (e.g. `agenticros-skill-followme`, `agenticros-skill-find`) extend the capability registry with new verbs like `follow_person` and `find_object`. The MCP server reads each skill's `package.json` `agenticros` block (`id`, `capabilities[]`) at startup and surfaces those verbs through `ros2_list_capabilities` and `run_mission` — no per-skill MCP tool needed. To register a skill for this adapter, install it with `agenticros skills install <owner/skill-id>` from the marketplace (e.g. `chrismatthieu/followme`), or add its path under `skillPaths[]` in `~/.agenticros/config.json` (or use the `agenticros skills add <path>` CLI). See [docs/skills.md](../../docs/skills.md) for the full skill contract.
|
|
@@ -2,7 +2,17 @@
|
|
|
2
2
|
"name": "@agenticros/claude-code",
|
|
3
3
|
"version": "0.0.1",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"description": "AgenticROS MCP server for Claude Code CLI — chat with your ROS2 robot from the terminal",
|
|
5
|
+
"description": "AgenticROS MCP server for Claude Code, Claude Desktop, Dispatch, and OpenAI Codex CLI — chat with your ROS2 robot from the terminal",
|
|
6
|
+
"keywords": [
|
|
7
|
+
"agenticros",
|
|
8
|
+
"ros2",
|
|
9
|
+
"robotics",
|
|
10
|
+
"mcp",
|
|
11
|
+
"claude",
|
|
12
|
+
"codex",
|
|
13
|
+
"openai",
|
|
14
|
+
"model-context-protocol"
|
|
15
|
+
],
|
|
6
16
|
"main": "./dist/index.js",
|
|
7
17
|
"bin": {
|
|
8
18
|
"agenticros-mcp": "./dist/index.js"
|
|
@@ -21,6 +21,16 @@ You don't normally use it directly — you use one of the adapters that depends
|
|
|
21
21
|
|
|
22
22
|
A skill is an npm package that registers tools the AI agent can call on your robot.
|
|
23
23
|
|
|
24
|
+
**Quick start** — scaffold, dev locally, publish:
|
|
25
|
+
|
|
26
|
+
```bash
|
|
27
|
+
npx agenticros create-skill my-skill
|
|
28
|
+
cd agenticros-skill-my-skill && npm install && npm run dev
|
|
29
|
+
npx agenticros publish
|
|
30
|
+
```
|
|
31
|
+
|
|
32
|
+
Or start from scratch with `@agenticros/core`:
|
|
33
|
+
|
|
24
34
|
```bash
|
|
25
35
|
npm install --save @agenticros/core
|
|
26
36
|
```
|
|
@@ -75,10 +85,10 @@ export const registerSkill: RegisterSkill = (api, _config, _context) => {
|
|
|
75
85
|
};
|
|
76
86
|
```
|
|
77
87
|
|
|
78
|
-
|
|
88
|
+
Publish to the marketplace with `npx agenticros publish`, or submit via **[skills.agenticros.com/submit](https://skills.agenticros.com/submit)**. Published skills use namespaced refs `owner/skill-id` (your GitHub login + `agenticros.id`):
|
|
79
89
|
|
|
80
90
|
```bash
|
|
81
|
-
npx agenticros skills install myskill
|
|
91
|
+
npx agenticros skills install your-handle/myskill
|
|
82
92
|
```
|
|
83
93
|
|
|
84
94
|
See the [skills contract & guide](https://github.com/agenticros/agenticros/blob/main/docs/skills.md) for the full reference.
|