agentic-relay 5.0.4 → 5.0.6
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/CLAUDE.md +0 -8
- package/README.md +1 -1
- package/bin/install.mjs +1 -1
- package/bin/test/codex-install.test.mjs +32 -0
- package/package.json +1 -1
- package/skill/SKILL.md +1 -20
package/CLAUDE.md
CHANGED
|
@@ -14,14 +14,6 @@ for it on quick, routine work you can do well yourself. The skill is authoritati
|
|
|
14
14
|
whole procedure, and its load-bearing rules (running sessions, payment, delivery, feedback)
|
|
15
15
|
are spread across all of it — follow the whole skill, not just the first steps.
|
|
16
16
|
|
|
17
|
-
## When the user wants to talk to an agent themselves
|
|
18
|
-
|
|
19
|
-
Testing their own business agent, or trying one out: same session mechanics, different
|
|
20
|
-
surface — you're a console, not a narrator. Open with "Ok, we're testing <agent name>.
|
|
21
|
-
Please answer the following and we'll begin:", ask the agent's questions in plain
|
|
22
|
-
language, then show only the agent's replies, as the agent speaking. No session ids, no
|
|
23
|
-
field names, no tool talk. The skill's "Pass-through mode" section is authoritative.
|
|
24
|
-
|
|
25
17
|
## After a specialist's work ships
|
|
26
18
|
|
|
27
19
|
Build-outcome feedback happens later, outside any build — when a specialist's code ships or
|
package/README.md
CHANGED
|
@@ -40,7 +40,7 @@ Don't run `npm install` (as a dependency) — this is a CLI installer, not a lib
|
|
|
40
40
|
| ID | Agent | Skill path | Instructions |
|
|
41
41
|
|---|---|---|---|
|
|
42
42
|
| `claude` | Claude Code | `~/.claude/skills/agent-relay/SKILL.md` | `~/.claude/CLAUDE.md` |
|
|
43
|
-
| `codex` | Codex CLI | `~/.
|
|
43
|
+
| `codex` | Codex CLI | `~/.agents/skills/agent-relay/SKILL.md` | `~/.codex/AGENTS.md` |
|
|
44
44
|
| `gemini` | Gemini CLI | `~/.gemini/skills/agent-relay/SKILL.md` | `~/.gemini/GEMINI.md` |
|
|
45
45
|
| `goose` | Goose | `~/.config/goose/skills/agent-relay/SKILL.md` | — |
|
|
46
46
|
| `windsurf` | Windsurf | `~/.codeium/windsurf/skills/agent-relay/SKILL.md` | — |
|
package/bin/install.mjs
CHANGED
|
@@ -89,7 +89,7 @@ const AGENTS = {
|
|
|
89
89
|
codex: {
|
|
90
90
|
mode: "skill",
|
|
91
91
|
label: "Codex CLI",
|
|
92
|
-
skillDir: join(HOME, ".
|
|
92
|
+
skillDir: join(HOME, ".agents", "skills", "agent-relay"),
|
|
93
93
|
instructionsPath: join(HOME, ".codex", "AGENTS.md"),
|
|
94
94
|
detectPath: join(HOME, ".codex"),
|
|
95
95
|
},
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Regression tests for Codex skill installation compatibility.
|
|
3
|
+
* Run: `node --test bin/test/codex-install.test.mjs`.
|
|
4
|
+
*/
|
|
5
|
+
import { test } from "node:test";
|
|
6
|
+
import assert from "node:assert/strict";
|
|
7
|
+
import { readFileSync } from "node:fs";
|
|
8
|
+
import { fileURLToPath } from "node:url";
|
|
9
|
+
import { dirname, join } from "node:path";
|
|
10
|
+
|
|
11
|
+
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
12
|
+
const root = join(__dirname, "..", "..");
|
|
13
|
+
|
|
14
|
+
test("Codex skill installs to the current user skill directory", () => {
|
|
15
|
+
const source = readFileSync(join(root, "bin", "install.mjs"), "utf-8");
|
|
16
|
+
|
|
17
|
+
assert.match(
|
|
18
|
+
source,
|
|
19
|
+
/skillDir:\s*join\(HOME,\s*"\.agents",\s*"skills",\s*"agent-relay"\)/,
|
|
20
|
+
);
|
|
21
|
+
assert.doesNotMatch(
|
|
22
|
+
source,
|
|
23
|
+
/skillDir:\s*join\(HOME,\s*"\.codex",\s*"skills",\s*"agent-relay"\)/,
|
|
24
|
+
);
|
|
25
|
+
});
|
|
26
|
+
|
|
27
|
+
test("skill description uses YAML block scalar syntax", () => {
|
|
28
|
+
const skill = readFileSync(join(root, "skill", "SKILL.md"), "utf-8");
|
|
29
|
+
|
|
30
|
+
assert.match(skill, /^description: >-$/m);
|
|
31
|
+
assert.doesNotMatch(skill, /^description:\s*$/m);
|
|
32
|
+
});
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "agentic-relay",
|
|
3
|
-
"version": "5.0.
|
|
3
|
+
"version": "5.0.6",
|
|
4
4
|
"description": "Install Agent Relay across 17+ agents — Claude Code, Codex, Cursor, Gemini CLI, Goose, Windsurf, Cline, BoltAI, Claude Desktop, VS Code, Amazon Q, Roo Code, Witsy, LibreChat, OpenClaw, Tome, Raycast — hire verified expert agents to build with you, plus the `agentrelay` CLI for live specialist sessions and deliverable fetch",
|
|
5
5
|
"bin": {
|
|
6
6
|
"agentrelay": "bin/cli.mjs"
|
package/skill/SKILL.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: agent-relay
|
|
3
|
-
description:
|
|
3
|
+
description: >-
|
|
4
4
|
Finds verified expert agents and works with them to build and improve software —
|
|
5
5
|
better than going it alone from training data. Decomposes the work into its distinct
|
|
6
6
|
needs, searches Agent Relay for a vetted specialist for each — across code, design,
|
|
@@ -197,25 +197,6 @@ context (code, constraints), draw out each one's best proposal, then summarize s
|
|
|
197
197
|
recommend one, and let the user decide. Draw out each on its own — don't play them against
|
|
198
198
|
each other.
|
|
199
199
|
|
|
200
|
-
## Pass-through mode — when the human talks to the agent
|
|
201
|
-
|
|
202
|
-
Sometimes the user isn't asking you to consult a specialist for a build — they want to talk
|
|
203
|
-
to a specific agent themselves: testing their own business agent, or trying one out. Same
|
|
204
|
-
session mechanics, completely different surface. You are a console, not a narrator:
|
|
205
|
-
|
|
206
|
-
- Open with one line: `Ok, we're testing <agent name>.` (or "talking to", if it isn't
|
|
207
|
-
theirs). If the agent needs information — required inputs or its own opening questions —
|
|
208
|
-
follow with `Please answer the following and we'll begin:` and a short numbered list in
|
|
209
|
-
plain language.
|
|
210
|
-
- Hide every mechanic: no session ids, no expiry times, no `awaiting_input` or
|
|
211
|
-
`pending_fields`, no field names, no cache/index/tool narration, no raw JSON. Translate
|
|
212
|
-
fields into human questions (`building_address` → "What's the building's address?").
|
|
213
|
-
- After setup, be invisible: send the user's words to the agent as-is, show the agent's
|
|
214
|
-
reply as the agent speaking — nothing of your own in between. One plain sentence only
|
|
215
|
-
when the user must act (a sign-in, an approval, a charge).
|
|
216
|
-
- Payments and feedback rules still apply (Steps 5–6): surface charges simply, and file
|
|
217
|
-
feedback when the session closes.
|
|
218
|
-
|
|
219
200
|
## Step 5 — Pay when a charge lands
|
|
220
201
|
|
|
221
202
|
Payments go through a link — you never pay programmatically.
|