一键导入
agent-registry
Dynamic agent registry via js-doc-store-server. Store, version, and discover subagent definitions in a database instead of static markdown files.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Dynamic agent registry via js-doc-store-server. Store, version, and discover subagent definitions in a database instead of static markdown files.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Pi extension for workflow automation enabling resilient server startup procedures and agent-based workflow orchestration.
Meta-skill pattern for dynamic skill discovery. Keep only ONE SKILL.md on filesystem; query all specialized skills on-demand from js-doc-store-server by tags.
Persistent task management with subagent orchestration. Create tasks, assign to agents, track execution, and build workflows via js-doc-store-server.
Professional Data Architect methodology. Includes entity analysis, schema design, implementation workflow, and prebuilt patterns (CRM, Wiki, Inventory).
Persist Pi conversation messages to js-doc-store-server. Auto-incremented turns, recovery after compaction, admin queries, best practices. v2.2.1 with 4 core tools.
RAG without embeddings using hierarchical Reasoning Trees. Navigate Root→Branch→Leaf, maintain summaries, and retrieve via structure rather than vectors.
| name | agent-registry |
| version | 1.0.0 |
| tags | agents,subagent,registry,discovery,dynamic,persistence,architecture |
| author | MauricioPerera |
| description | Dynamic agent registry via js-doc-store-server. Store, version, and discover subagent definitions in a database instead of static markdown files. |
This skill extends the subagent pattern with a hybrid discovery model: agents live both on the filesystem (~/.pi/agent/agents/*.md) and in a js-doc-store-server table. When a subagent task runs, pi discovers agents from both sources and merges them.
| Issue | Consequence |
|---|---|
| Agents scattered across machines | No portability between workspaces |
| No versioning | Agent definitions evolve but files don't track it |
| No dynamic updates | Must restart pi to see new agents |
| No sharing | Can't reuse agent definitions across projects |
Filesystem (~/.pi/agent/agents/)
├── scout.md
├── planner.md
├── reviewer.md
└── worker.md
js-doc-store-server (localhost:3000)
└── table: agents
├── scout → content: full markdown
├── planner → content: full markdown
├── reviewer → content: full markdown
├── worker → content: full markdown
└── custom → user-defined agents
{
"tableName": "agents",
"columns": [
{ "name": "name", "type": "text", "required": true },
{ "name": "description", "type": "text" },
{ "name": "version", "type": "text" },
{ "name": "tags", "type": "text" },
{ "name": "model", "type": "text" },
{ "name": "tools", "type": "text" },
{ "name": "content", "type": "text", "required": true },
{ "name": "source", "type": "text" }
]
}
The content field stores the complete markdown including frontmatter:
---
name: scout
description: Fast codebase reconnaissance
tools: read, grep, find, ls, bash
model: qwen3.6:latest
---
You are a scout. Quickly investigate a codebase and return structured findings...
When the subagent tool executes:
~/.pi/agent/agents/*.md (user-level).pi/agents/*.md (project-level, if scope allows)POST /admin/query { tableName: "agents", filter: {} }Server agents have source: "registry" and filePath: "registry://{name}".
// 1. Discover by topic (optional)
const results = await arch_query({
tableName: "agents",
filter: { tags: { $regex: "review" } }
});
// 2. Register new agent from conversation
await arch_insert({
tableName: "agents",
data: {
name: "security-auditor",
description: "Audits code for security vulnerabilities",
version: "1.0.0",
tags: "security,audit,subagent",
model: "qwen3.6:latest",
tools: "read, grep, find, ls, bash",
content: `---\nname: security-auditor\n...\n---\n\nYou are a security auditor...`,
source: "registry"
}
});
// 3. Verify
const all = await arch_query({ tableName: "agents", filter: {} });
| Task | Tool Sequence |
|---|---|
| Discover by topic | arch_query → filter tags: { $regex: "topic" } |
| Load full agent | arch_query → filter name: "exact-name" → read .content |
| Register new agent | arch_insert into agents table |
| Update agent version | arch_update with $set: { version, content } |
| List all agents | arch_query with empty filter |
| Delete obsolete agent | arch_remove with filter { name: "agent-name" } |
If the server is unreachable or the token is expired, discovery falls back silently to filesystem-only agents. No error is thrown — the subagent continues working with whatever agents are available.
| Benefit | Explanation |
|---|---|
| Cross-machine portability | Agents follow your js-doc-store-server |
| Versioning | Field version tracks agent evolution |
| Tag Search | Find agents by topic, not just filename |
| Cross-session persistence | Agents survive pi restarts |
| Easy Registration | New agent = 1 arch_insert call |
| Centralized Source | Single agents table |
| Hybrid Fallback | Works with or without server |
~/.pi/agent/agents/*.md as local cache/fallbackjs-doc-store-server using arch_insertskill-registry — Dynamic skill discovery (same pattern)memory-management — Persist conversations to serversubagent extension — Delegation to isolated agents