Skip to content

feat: add OpenClaw agent integration#1861

Open
AIstar007 wants to merge 9 commits intogithub:mainfrom
AIstar007:main
Open

feat: add OpenClaw agent integration#1861
AIstar007 wants to merge 9 commits intogithub:mainfrom
AIstar007:main

Conversation

@AIstar007
Copy link

Description

Adds full support for [OpenClaw](https://openclaw.ai) as a new AI agent in Specify CLI.

OpenClaw is a persistent AI agent daemon that connects to messaging platforms (Telegram, WhatsApp, Slack, etc.) and uses a skill-based architecture — skills are discovered as directories containing a SKILL.md file under <workspace>/skills/, identical to the pattern used by Kimi Code.

Files changed:

  • src/specify_cli/__init__.py — Added "openclaw" to AGENT_CONFIG with folder: ".openclaw/", commands_subdir: "skills", requires_cli: True, install_url: "https://openclaw.ai". Help text updates automatically via _build_ai_assistant_help().
  • .github/workflows/scripts/create-release-packages.sh — Added openclaw to ALL_AGENTS and new create_openclaw_skills() function that generates .openclaw/skills/speckit-<command>/SKILL.md files with OpenClaw-compatible frontmatter.
  • .github/workflows/scripts/create-release-packages.ps1 — Mirror of bash changes: New-OpenClawSkills function, 'openclaw' case in Build-Variant, 'openclaw' added to $AllAgents.
  • scripts/bash/update-agent-context.sh — Added OPENCLAW_FILE="$AGENTS_FILE" (OpenClaw reads AGENTS.md from workspace root, same as amp, kiro-cli, bob), added openclaw) case in update_specific_agent() and update_if_new call in update_all_existing_agents().
  • AGENTS.md — Added OpenClaw to supported agents table, CLI-based agents list, Markdown format section, and directory conventions.
  • README.md — Added OpenClaw to supported agents table, --ai option description, specify check tools list, and examples section.
  • templates/SKILL.md — New workspace-level skill manifest copied to .openclaw/skills/speckit/SKILL.md on specify init --ai openclaw --ai-skills.
  • templates/skill-file-template.md — New per-command SKILL.md template used by install_ai_skills(), following the existing *-template.md naming convention.

Key design decisions:

  • --ai-skills is the primary path for OpenClaw since it uses skill directories, not flat slash command files
  • Skill naming uses dash separator (speckit-specify) vs Kimi Code's dot separator (speckit.specify)
  • OPENCLAW_FILE points to AGENTS.md — the OpenClaw equivalent of CLAUDE.md for Claude Code
  • generic remains last in all agent arrays

Testing

  • Tested locally with uv run specify --help
  • Ran existing tests with uv sync && uv run pytest
  • Tested with a sample project (if applicable)
# openclaw appears in --ai help text
uv run specify init --help

# correct .openclaw/skills/ structure is generated
uv run specify init /tmp/test-openclaw --ai openclaw --ai-skills

# openclaw shows in tool check
uv run specify check

# release package builds correctly
AGENTS=openclaw SCRIPTS=sh .github/workflows/scripts/create-release-packages.sh v0.0.0-test

AI Disclosure

  • I did not use AI assistance for this contribution
  • I did use AI assistance (describe below)

Implementation approach and file structure were developed with AI assistance (Claude). All code was manually reviewed, tested end-to-end, and verified against existing agent integration patterns before submission.

@AIstar007 AIstar007 requested a review from mnriem as a code owner March 15, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant