Agent SkillsWingedGuardian/GENesis-AGI › integrate-module

integrate-module

GitHub

将外部程序集成到Genesis模块的标准化工具。通过发现、连接映射、配置生成和验证,支持URL、仓库或描述输入,实现外部系统与Genesis的标准化对接。

src/genesis/skills/integrate-module/SKILL.md WingedGuardian/GENesis-AGI

Trigger Scenarios

用户要求将X集成到Genesis 用户希望将外部程序/服务接入Genesis Ego会话提议集成值得集成的程序

Install

npx skills add WingedGuardian/GENesis-AGI --skill integrate-module -g -y
More Options

Non-standard path

npx skills add https://github.com/WingedGuardian/GENesis-AGI/tree/main/src/genesis/skills/integrate-module -g -y

Use without installing

npx skills use WingedGuardian/GENesis-AGI@integrate-module

指定 Agent (Claude Code)

npx skills add WingedGuardian/GENesis-AGI --skill integrate-module -a claude-code -g -y

安装 repo 全部 skill

npx skills add WingedGuardian/GENesis-AGI --all -g -y

预览 repo 内 skill

npx skills add WingedGuardian/GENesis-AGI --list

SKILL.md

Frontmatter
{
    "name": "integrate-module",
    "phase": 7,
    "consumer": "cc_foreground",
    "skill_type": "workflow",
    "description": "Turn any external program into a Genesis module via structured discovery, connection mapping, config generation, and verification."
}

Integrate Module

Turn any external program into a Genesis module. This is the standardized process for plugging a program into Genesis — whether it was built for Genesis or not.

Genesis is the nervous system. The program is the body. This skill builds the connection between them.

When to Use

  • User says "integrate X into Genesis" or "make X a module"
  • User wants to plug an external program, service, or tool into Genesis
  • User wants Genesis to drive, monitor, or interact with an external system
  • Ego session discovers a program worth integrating and proposes it

Input

One of:

  • Running service URL (e.g., http://your-host:8080)
  • Repository URL (e.g., github.com/user/repo)
  • Local path (e.g., ~/my-tool/)
  • Description (e.g., "a job automation tool running on my server")

Phase 1: Discovery

Goal: Understand what the program does, how it communicates, and what Genesis can connect to.

If running service:

  1. Probe for health endpoints: /health, /api/health, /status, /
  2. Probe for API documentation: /docs, /openapi.json, /swagger.json
  3. If OpenAPI spec found: parse all endpoints, methods, parameters
  4. If no spec: probe common REST patterns, check response shapes
  5. Record: base URL, available endpoints, response formats, auth requirements

If repository:

  1. Clone or read the source
  2. Identify tech stack (language, framework, database, scheduler)
  3. Find entry points: route definitions, CLI commands, main functions
  4. Map API endpoints from source (FastAPI routes, Express handlers, etc.)
  5. Identify configuration: env vars, config files, secrets needed
  6. Check deployment method: Docker, systemd, kubernetes, manual
  7. Record: full capability map from source

If description only:

  1. Ask the user for more details: where does it run? how do you access it?
  2. Attempt to locate the service or source based on what they share
  3. Fall back to manual endpoint mapping with user guidance

Output of Phase 1:

A structured assessment:

Program: [name]
Location: [URL / path / host]
Tech Stack: [language, framework, DB]
Communication: [HTTP API / CLI / stdin / socket]
Endpoints Found: [count]
Auth Required: [yes/no, method]
Health Check: [endpoint, expected response]

Phase 2: Connection Mapping

Goal: Map every program capability to a Genesis module operation.

For each discovered endpoint or command:

  1. What does it do? (read data, trigger action, modify state)
  2. What parameters does it take?
  3. What does it return?
  4. Is it safe to call autonomously? (read-only vs. state-changing)
  5. Should it be in the operations manifest?

Group operations by category:

  • Health/Status — monitoring operations (always include)
  • Data Retrieval — read-only queries (safe for autonomous use)
  • Actions — state-changing operations (may need user approval)
  • Admin — deployment, configuration, lifecycle (restricted)

Output of Phase 2:

Draft operations manifest (YAML format):

operations:
  health:
    method: GET
    path: /api/health
    description: "Check service health"
  # ... all discovered operations

Phase 3: Effort Assessment

Goal: Give the user an honest picture of what's needed.

Assess each dimension:

  • Connectivity — Can Genesis reach the program? (network, auth, firewall)
  • API Coverage — What % of the program's capabilities are API-accessible?
  • Health Monitoring — Is there a health endpoint? Can we detect failures?
  • Lifecycle — Can Genesis start/stop/restart the program? (SSH, systemd, k8s)
  • Data Flow — Can Genesis read the program's data? Push data to it?
  • Autonomy Potential — What can Genesis do without user approval?

Rate complexity:

  • Simple (1 session): Program has HTTP API, health endpoint, clear operations. Genesis wraps it as-is. Career Agent was this level.
  • Moderate (2-3 sessions): Program needs some adapter work. Maybe API gaps, authentication setup, or custom endpoint mapping.
  • Complex (multi-session): Program needs code changes. Missing API for key capabilities, no health endpoint, custom IPC needed, authentication integration.

Be explicit: "This integration will take [estimate]. Here's why: [specific gaps]."

If complex, recommend incremental approach:

  1. Start with health monitoring + basic queries (one session)
  2. Add action operations (second session)
  3. Add lifecycle management (third session)
  4. Add deep bidirectional capabilities (ongoing)

Phase 4: Config Generation

Goal: Create the YAML module config and any needed adapter code.

  1. Generate config/modules/[program-name].yaml:

    • name, type: external, description
    • IPC method and URL
    • Health check endpoint
    • Lifecycle commands (if SSH available)
    • Full operations manifest from Phase 2
    • Configurable fields (if applicable)
  2. If the program needs custom adapter code beyond what ExternalProgramAdapter provides, create it in src/genesis/modules/[program-name]/.

  3. Test the connection: verify health check passes.

Phase 5: Dashboard Setup

Goal: Make the module usable from the Genesis dashboard.

Verify:

  • Module appears in Modules & Providers panel with EXTERNAL badge
  • Description is populated from YAML
  • Health status shows Connected/Disconnected
  • IPC details visible (method, URL)
  • Lifecycle commands available (if configured)
  • Clicking the module opens a useful detail modal

If the program has unique data worth displaying, consider adding custom dashboard elements (follow-up, not blocking).

Phase 6: Verification

Goal: Prove the integration works end-to-end.

  1. Health check: module_call("[name]", "health") returns healthy
  2. Data query: Test a read-only operation via module_call
  3. Action (if applicable): Test a state-changing operation
  4. Dashboard: Module shows correct status, description, operations
  5. Persistence: Restart bridge, verify module re-loads from YAML
  6. Error handling: What happens when the program is unreachable?

Phase 7: Documentation

  1. Update MEMORY.md with the new module entry
  2. If the integration required non-obvious decisions, record them
  3. Commit all changes via worktree, merge to main

Notes

  • Every integration is bespoke. This skill is the map, not the destination.
  • The depth of integration is the user's call. Genesis maps the terrain and presents options. The user decides how far to go.
  • Don't gatekeep. If the user says "do it all," do it all. If they want just health monitoring, that's fine too.
  • Be honest about complexity. "This will take multiple sessions" is useful information, not a reason to avoid starting.
  • The goal is full co-pilot capability: anything the user could do with the program, Genesis should be able to do through the module interface.

Version History

  • f9015bb Current 2026-07-05 18:17

Same Skill Collection

.claude/skills/code-intelligence/SKILL.md
.claude/skills/content-publish/SKILL.md
.claude/skills/genesis-development/SKILL.md
.claude/skills/genesis-voice/SKILL.md
.claude/skills/gitnexus/gitnexus-cli/SKILL.md
.claude/skills/gitnexus/gitnexus-debugging/SKILL.md
.claude/skills/gitnexus/gitnexus-exploring/SKILL.md
.claude/skills/gitnexus/gitnexus-guide/SKILL.md
.claude/skills/gitnexus/gitnexus-impact-analysis/SKILL.md
.claude/skills/gitnexus/gitnexus-refactoring/SKILL.md
.claude/skills/shelve/SKILL.md
.claude/skills/unshelve/SKILL.md
.claude/skills/youtube-fetch/SKILL.md
config/gstack-patches/codex-SKILL.md
src/genesis/skills/browser-automation/SKILL.md
src/genesis/skills/debugging/SKILL.md
src/genesis/skills/evaluate/SKILL.md
src/genesis/skills/forecasting/SKILL.md
src/genesis/skills/lead-generation/SKILL.md
src/genesis/skills/linkedin-comment-strategy/SKILL.md
src/genesis/skills/linkedin-content-calendar/SKILL.md
src/genesis/skills/linkedin-dm-outreach/SKILL.md
src/genesis/skills/linkedin-hook-writer/SKILL.md
src/genesis/skills/linkedin-post-writer/SKILL.md
src/genesis/skills/linkedin-profile-optimizer/SKILL.md
src/genesis/skills/obstacle-resolution/SKILL.md
src/genesis/skills/onboarding/SKILL.md
src/genesis/skills/osint/SKILL.md
src/genesis/skills/prospect-researcher/SKILL.md
src/genesis/skills/research/SKILL.md
src/genesis/skills/retrospective/SKILL.md
src/genesis/skills/stealth-browser/SKILL.md
src/genesis/skills/triage-calibration/SKILL.md
src/genesis/skills/user_evaluate/SKILL.md
src/genesis/skills/video-processing/SKILL.md
.claude/skills/deliverable-builder/SKILL.md
.claude/skills/voice-master/SKILL.md
src/genesis/skills/voice-master/SKILL.md

Metadata

Files
0
Version
f9015bb
Hash
c433472b
Indexed
2026-07-05 18:17

Home - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-07-13 17:58
浙ICP备14020137号-1 $Map of visitor$