A unified agent and skill compilation system that transforms universal JSON configurations into provider-specific formats for Claude Code, OpenCode, GitHub Copilot, and Gemini CLI.
gsAgent/
├── agents/ # Universal agent JSON configurations
├── skills/ # Universal skill JSON configurations
├── compiler/ # Compilation engine and templates
│ ├── compile.py # Main compilation script
│ ├── templates/ # Provider-specific templates
│ └── schema/ # JSON schemas
├── output/ # Compiled provider-specific outputs
├── .github/workflows/ # GitHub Actions for deployment
└── AGENTS.md # Universal instructions
-
Initialize deployment structure:
./init-deploy.sh
-
Add your agent configurations:
- Place agent JSON files in
agents/directory - Place skill JSON files in
skills/directory
- Place agent JSON files in
-
Compile and validate:
python3 compiler/compile.py --validate python3 compiler/compile.py --all
-
Deploy:
- Commit and push to trigger GitHub Actions
- Agents will be compiled and deployed to separate branches
The compiler transforms universal JSON configurations into provider-specific formats:
{
"name": "security-auditor",
"description": "Security-focused code auditor",
"tools": ["read", "grep", "glob", "bash"],
"permissions": {
"edit": "deny",
"bash": "ask"
},
"model": "sonnet",
"color": "red",
"temperature": 0.5,
"providers": {
"claude": true,
"opencode": true,
"copilot": true,
"gemini": false
}
}---
name: security-auditor
description: Security-focused code auditor
tools: [Read, Grep, Glob, Bash]
color: red
---
[Prompt content]---
description: Security-focused code auditor
tools:
read: true
grep: true
glob: true
bash: true
model: sonnet
temperature: 0.5
---
[Prompt content]---
name: security-auditor
description: Security-focused code auditor
tools: ['read', 'grep', 'glob', 'bash']
---
[Prompt content]The repository includes a CI/CD pipeline that:
- Triggers on push to main branch
- Compiles agents for each provider (claude, copilot, opencode)
- Deploys to separate branches:
agents-claude- Claude Code agentsagents-copilot- GitHub Copilot agentsagents-opencode- OpenCode agents
- Creates release artifacts for each provider
- Claude Code -
.claude/directory - OpenCode -
.opencode/directory - GitHub Copilot -
.github/directory - Gemini CLI -
.gemini/directory (skills only)
# Validate all configurations
python3 compiler/compile.py --validate
# Compile all agents and skills
python3 compiler/compile.py --all
# Compile specific agent
python3 compiler/compile.py --agent security-auditor
# Compile for specific provider
python3 compiler/compile.py --provider claude --all
# Compile only agents
python3 compiler/compile.py --agents-only
# Compile only skills
python3 compiler/compile.py --skills-only- Agents:
agents/{agent-name}.json - Skills:
skills/{skill-name}.json - Compiled agents:
output/.{provider}/agents/{agent-name}.{ext} - Compiled skills:
output/.{provider}/skills/{skill-name}/SKILL.md
- Claude: Uses PascalCase for tools, supports color and model
- OpenCode: Uses YAML format with boolean values for tools
- Copilot: Uses quoted strings for tools, supports handoffs and MCP servers
- Gemini: Skills only, no agent support
Each provider gets its own deployment branch:
agents-claude- Claude Code agentsagents-copilot- GitHub Copilot agentsagents-opencode- OpenCode agents
- Python 3.7+
- pip packages: jinja2, schema
- GitHub repository with Actions enabled
This repository follows the standard open-source licensing model for AI agent configurations.