Maintain Cross-Platform Architecture
Purpose: Comprehensive knowledge of AgentSys's cross-platform infrastructure for release preparation, validation, and maintenance.
Scope: LOCAL skill for this repository only. Contains specific file locations, transformation rules, and automation patterns for maintaining Claude Code + OpenCode + Codex CLI compatibility.
Critical Rules
- •3 platforms MUST work - Claude Code, OpenCode, Codex CLI. No exceptions.
- •Validation before every push - Pre-push hook runs 6 validators automatically.
- •All version fields must align - 11 files total (package.json + 10 plugin.json files).
- •Documentation must be accurate - Counts, paths, and platform references validated by CI.
- •Update this skill - If you find misalignments or automation opportunities, update this file.
Platform Differences (The Complete Matrix)
Configuration
| Aspect | Claude Code | OpenCode | Codex CLI |
|---|---|---|---|
| Config format | JSON | JSON/JSONC | TOML |
| Config location | ~/.claude/settings.json | ~/.config/opencode/opencode.json | ~/.codex/config.toml |
| State directory | .claude/ | .opencode/ | .codex/ |
| Command prefix | / | / | $ |
| Project instructions | CLAUDE.md | AGENTS.md (reads CLAUDE.md) | AGENTS.md |
Component Locations
| Component | Claude Code | OpenCode | Codex CLI |
|---|---|---|---|
| Commands | Plugin commands/ | ~/.config/opencode/commands/ | N/A (use skills) |
| Agents | Plugin agents/ | ~/.config/opencode/agents/ | N/A (use MCP) |
| Skills | Plugin skills/ | .opencode/skills/ (singular) | ~/.codex/skills/ |
| Hooks | Plugin hooks/ | Plugin hooks/ | Plugin hooks/ |
Install Locations (This Repo)
| Platform | Package Copy | Commands | Agents | Skills | Config |
|---|---|---|---|---|---|
| Claude Code | Via marketplace | Plugin bundled | Plugin bundled | Plugin bundled | N/A |
| OpenCode | ~/.agentsys/ | ~/.config/opencode/commands/ | ~/.config/opencode/agents/ (29 files) | N/A | ~/.config/opencode/opencode.json |
| Codex CLI | ~/.agentsys/ | N/A | N/A | ~/.codex/skills/ (9 directories) | ~/.codex/config.toml |
Frontmatter Differences
Command Frontmatter:
# Claude Code --- description: Task description argument-hint: "[args]" allowed-tools: Bash(git:*), Read, Task --- # OpenCode (transformed by installer) --- description: Task description agent: general # model field REMOVED (uses user's default model) --- # Codex (skills use different format) --- name: skill-name description: "Use when user asks to \"trigger\". Does X." ---
Agent Frontmatter:
# Claude Code --- name: agent-name description: Agent description tools: Bash(git:*), Read, Edit, Task model: sonnet --- # OpenCode (transformed by installer) --- name: agent-name description: Agent description mode: subagent # model field REMOVED (OpenCode doesn't support per-agent models yet) permission: read: allow edit: allow bash: ask task: allow ---
Transformation Rules (bin/cli.js handles this):
| Claude Code | OpenCode |
|---|---|
tools: Bash(git:*) | permission: { bash: "allow" } |
tools: Read | permission: { read: "allow" } |
tools: Edit, Write | permission: { edit: "allow" } |
tools: Task | permission: { task: "allow" } |
model: sonnet/opus/haiku | REMOVED (OpenCode uses user default) |
CRITICAL: The --strip-models flag in bin/cli.js removes model specifications for OpenCode users who don't have access to all three model tiers.
File Locations (This Repository)
Installation Infrastructure
| File | Purpose |
|---|---|
bin/cli.js | Main installer (811 lines) - handles all 3 platforms |
scripts/setup-hooks.js | Git hooks installer (pre-commit, pre-push) |
adapters/opencode-plugin/ | Native OpenCode TypeScript plugin |
adapters/opencode/ | OpenCode install script (legacy) |
adapters/codex/ | Codex install script (legacy) |
mcp-server/index.js | Cross-platform MCP server |
Validation Scripts (All in CI + Pre-Push)
| Script | What It Validates | Exit 1 If |
|---|---|---|
scripts/validate-plugins.js | Plugin structure, plugin.json validity | Invalid plugin.json |
scripts/validate-cross-platform.js | 3-platform compatibility | Platform-specific code |
scripts/validate-repo-consistency.js | Repo integrity | Inconsistencies |
scripts/check-hardcoded-paths.js | No hardcoded .claude/ paths | Hardcoded paths found |
scripts/validate-counts.js | Doc accuracy (agents, plugins, skills, versions) | Count mismatches |
scripts/validate-cross-platform-docs.js | Platform docs consistency | Doc conflicts |
Transformation Mappings (bin/cli.js)
Search markers in bin/cli.js:
- •
PLUGINS_ARRAY- Line 138 - Plugins to install for Claude Code - •
OPENCODE_COMMAND_MAPPINGS- Line 242 - Commands to copy for OpenCode - •
CODEX_SKILL_MAPPINGS- Line ~280 - Skills to create for Codex
OPENCODE_COMMAND_MAPPINGS format:
['dest-file.md', 'plugin-name', 'source-file.md']
CODEX_SKILL_MAPPINGS format:
['skill-name', 'plugin-name', 'source-file.md', 'Trigger description with "phrases"']
Version Fields (11 Files Total)
All must have SAME version for releases:
- •
package.json- Line 3 - •
.claude-plugin/plugin.json- Root plugin - •
.claude-plugin/marketplace.json- 9 plugin entries - •
mcp-server/index.js- Search:MCP_SERVER_VERSION5-13.plugins/*/. claude-plugin/plugin.json- All 9 plugins
Quick check:
grep -r '"version"' package.json plugins/*/.claude-plugin/plugin.json .claude-plugin/plugin.json
Release Process (RC and Production)
RC Release (3.X.0-rc.N)
Step 1: Update Versions
# Bump to RC version in ALL 11 files
NEW_VERSION="3.6.0-rc.1"
# package.json
npm version $NEW_VERSION --no-git-tag-version
# All plugin.json files (9 plugins + root)
find . -name "plugin.json" -path "*/.claude-plugin/*" -exec sed -i '' "s/\"version\": \".*\"/\"version\": \"$NEW_VERSION\"/" {} \;
# mcp-server/index.js
sed -i '' "s/version: '.*'/version: '$NEW_VERSION'/" mcp-server/index.js
Step 2: Update CHANGELOG.md
## [3.6.0-rc.1] - 2026-01-30 ### Added - Feature description ### Changed - Change description ### Fixed - Bug fix description
Step 3: Validate
npm run validate # All 6 validators npm test # All tests npm pack --dry-run # Package builds
Step 4: Commit and Tag
git add -A git commit -m "chore: release v3.6.0-rc.1" git tag v3.6.0-rc.1 git push origin main --tags
Step 5: Verify
# Wait for GitHub Actions npm view agentsys@rc version # Should show 3.6.0-rc.1
Production Release (3.X.0)
Same as RC but:
- •Remove
-rc.Nsuffix from version - •Tag with
v3.X.0(no suffix) - •npm publishes to
latesttag automatically
What Changes Per Release
Always Update
- •Version fields (11 files) - See "Version Fields" section above
- •CHANGELOG.md - Add new entry at top
- •Run validation -
npm run validate(includes all 6 validators) - •Run tests -
npm test(1400+ tests) - •Package build -
npm pack --dry-run
If New Command Added
- •Convention-based discovery - Plugins auto-discovered from
plugins/*/with.claude-plugin/plugin.json - •Commands auto-discovered - From
plugins/*/commands/*.mdfiles - •Codex trigger phrases - Use
codex-descriptionfrontmatter in command files - •docs/INSTALLATION.md - Add
/plugin install <name>@agentsysline - •.claude-plugin/marketplace.json - Add plugin entry to
pluginsarray - •README.md - Add to commands table
- •Validation will catch - If counts don't match (plugins count)
If New Agent Added
- •No changes needed - Installer auto-copies agents to OpenCode
~/.config/opencode/agents/ - •Codex uses MCP - Agents not directly supported, use MCP tools instead
- •Validation will catch - If file-based agent count changes
If New Skill Added
- •Codex requires trigger phrases - Description must include "Use when user asks to..."
- •Validation will catch - If skill count doesn't match
If New MCP Tool Added
- •mcp-server/index.js - Add to TOOLS array and toolHandlers
- •.claude-plugin/marketplace.json - Add to
mcpServer.toolsarray - •bin/cli.js - Update MCP tools console output (OpenCode + Codex)
- •README.md - Add to MCP tools table if user-facing
If Library Module Changed
- •lib/{module}/ - Make changes
- •lib/index.js - Export if new module
- •Run sync -
./scripts/sync-lib.sh(oragentsys-dev sync-lib) copies lib/ to all 9 plugins - •Commit both - Source in lib/ AND copies in plugins/*/lib/
Platform-Specific Transformations (What bin/cli.js Does)
OpenCode Transformations
1. Remove Model Specifications (if --strip-models)
// Original (Claude Code): model: sonnet // Transformed (OpenCode): (field removed entirely)
Why: Not all OpenCode users have access to all three model tiers. Uses user's default model instead.
2. Transform Tools to Permissions
// Original: tools: Bash(git:*), Read, Edit, Task // Transformed: permission: bash: allow read: allow edit: allow task: allow
3. Replace Environment Variables
// Original:
${CLAUDE_PLUGIN_ROOT}
// Transformed:
${PLUGIN_ROOT}
4. Normalize Windows Paths in require()
// Original:
require('${CLAUDE_PLUGIN_ROOT}/lib/module.js')
// Transformed:
require('${PLUGIN_ROOT}'.replace(/\\/g, '/') + '/lib/module.js')
Why: Windows backslashes (C:\Users\...) break JavaScript string escaping.
Codex Transformations
1. Command → Skill Conversion
// Commands become skills with trigger phrases // Original command: /next-task // Becomes: $next-task with SKILL.md // SKILL.md requires: --- name: next-task description: "Use when user asks to \"find next task\", \"automate workflow\". Master orchestrator." ---
2. Agent Logic → Inline in Skills
- •Agents not supported directly in Codex
- •Agent workflows embedded in skill instructions
- •Or use MCP tools to invoke agent logic
Validation Suite (Pre-Push + CI)
validate:plugins
File: scripts/validate-plugins.js
Checks:
- •plugin.json structure validity
- •Required fields present
- •Commands/agents/skills exist as declared
Exit 1 if: Invalid plugin.json
validate:cross-platform
File: scripts/validate-cross-platform.js
Checks:
- •Code works on all 3 platforms
- •No platform-specific assumptions
- •Proper use of AI_STATE_DIR
Exit 1 if: Platform-specific code detected
validate:consistency
File: scripts/validate-repo-consistency.js
Checks:
- •Repository integrity
- •File structure consistency
Exit 1 if: Inconsistencies found
validate:paths
File: scripts/check-hardcoded-paths.js
Checks:
- •No hardcoded
.claude/paths in agents/commands/skills - •Excludes: docs, SKILL.md in enhance/, RESEARCH.md, examples
Patterns detected:
/\.claude\/(?!.*\(example\)|.*Platform|.*State directory)/ /\.opencode\/(?!.*\(example\)|.*Platform)/ /\.codex\/(?!.*\(example\)|.*Platform)/
Safe contexts (skipped):
- •Documentation tables (
| State Dir |) - •Platform comparison examples
- •Skill documentation (enhance/* SKILL.md)
- •Checklist references
Exit 1 if: Hardcoded paths found outside safe contexts
validate:counts
File: scripts/validate-counts.js
Checks:
- •Plugin count (9) across README, CLAUDE.md, AGENTS.md, package.json, docs
- •Agent count (39 total = 29 file-based + 10 role-based) across all docs
- •Skill count (23) across all docs
- •Version alignment (package.json matches all 10 plugin.json files)
- •CLAUDE.md ↔ AGENTS.md critical rules alignment (>90% similarity)
Actual counts (filesystem):
- •Plugins: 9 directories in
plugins/ - •File-based agents: 29 .md files in
plugins/*/agents/ - •Role-based agents: 10 (from audit-project, defined inline)
- •Skills: 23 SKILL.md files in
plugins/*/skills/*/SKILL.md
Smart validation:
- •Accepts "39 agents" or "39 agents (29 file-based + 10 role-based)"
- •Skips plugin-specific counts like "next-task (12 agents)"
- •Only validates top-level totals
Exit 1 if: Count mismatches or version misalignment
validate:platform-docs
File: scripts/validate-cross-platform-docs.js
Checks:
- •Command prefix consistency (/ vs $)
- •State directory references platform-appropriate
- •Feature parity (all 9 commands documented for all platforms)
- •Installation instructions consistent
- •MCP server configurations correct
Smart validation:
- •Skips comparison tables
- •Skips checklist references
- •Skips skill name mentions (like
enhance-claude-memory) - •Skips documentation examples
Exit 1 if: Platform conflicts or missing features
Pre-Push Hook (Automatic Enforcement)
File: scripts/setup-hooks.js → Creates .git/hooks/pre-push
Phase 1: Validation Suite
npm run validate # Runs all 6 validators
Blocks if any validator fails.
Phase 2: Enhanced Content Check Detects modified:
- •
agents/*.md - •
skills/*/SKILL.md - •
hooks/*.md - •
prompts/*.md
Prompts: "Have you run /enhance on these files? (y/N)" Blocks if "N" (per CLAUDE.md Critical Rule #7).
Phase 3: Release Tag Validation If pushing version tag (v*):
- •Runs
npm test - •Runs
npm pack --dry-run - •Blocks if either fails
Skip hook: git push --no-verify (use with caution)
Installer Deep Dive (bin/cli.js)
Interactive Flow
- •Platform Selection - Multi-select: Claude Code, OpenCode, Codex CLI
- •Clean Old Installation - Removes
~/.agentsys/if exists - •Copy Package - From npm global to
~/.agentsys/ - •Install Dependencies - Runs
npm install --productionin package and mcp-server - •Per-Platform Installation:
- •Claude Code: Adds marketplace, installs 9 plugins
- •OpenCode: Copies commands, agents; updates config; installs native plugin
- •Codex: Creates skills with trigger phrases; updates config
Key Functions
installForClaude() - Line 116
- •Adds marketplace:
claude plugin marketplace add avifenesh/agentsys - •Installs 9 plugins:
claude plugin install {plugin}@agentsys - •Commands: /next-task, /ship, /deslop, /audit-project, /drift-detect, /enhance, /perf, /sync-docs, /repo-map
installForOpenCode(installDir, options) - Line 165
- •Creates dirs:
~/.config/opencode/commands/,~/.config/opencode/plugins/agentsys.ts - •Copies native plugin from
adapters/opencode-plugin/ - •Transforms commands using
OPENCODE_COMMAND_MAPPINGS - •Transforms agents (tools → permissions, strips models if --strip-models)
- •Updates
~/.config/opencode/opencode.jsonwith MCP config
installForCodex(installDir) - Line 330+
- •Creates dir:
~/.codex/skills/ - •Creates SKILL.md files using
CODEX_SKILL_MAPPINGS - •Each skill gets trigger-phrase description
- •Updates
~/.codex/config.tomlwith MCP config
Command Mappings (OpenCode)
OPENCODE_COMMAND_MAPPINGS - Line ~242:
const commandMappings = [ ['deslop.md', 'deslop', 'deslop.md'], ['enhance.md', 'enhance', 'enhance.md'], ['next-task.md', 'next-task', 'next-task.md'], ['delivery-approval.md', 'next-task', 'delivery-approval.md'], ['sync-docs.md', 'sync-docs', 'sync-docs.md'], ['audit-project.md', 'audit-project', 'audit-project.md'], ['drift-detect.md', 'drift-detect', 'drift-detect.md'], ['repo-map.md', 'repo-map', 'repo-map.md'], ['perf.md', 'perf', 'perf.md'], ['ship.md', 'ship', 'ship.md'] ];
Skill Mappings (Codex)
CODEX_SKILL_MAPPINGS - Line ~280+:
const skillMappings = [
['next-task', 'next-task', 'next-task.md',
'Use when user asks to "find next task", "automate workflow". Master workflow orchestrator.'],
['ship', 'ship', 'ship.md',
'Use when user asks to "create PR", "ship changes", "merge PR". Complete PR workflow.'],
// ... 7 more
];
Adding New Features (Step-by-Step)
New Command (e.g., /my-command)
1. Create command file:
plugins/my-plugin/commands/my-command.md
2. Update bin/cli.js - 3 locations:
a) PLUGINS_ARRAY (if new plugin):
// Line ~138 const plugins = ['next-task', 'ship', ..., 'my-plugin'];
b) OPENCODE_COMMAND_MAPPINGS:
// Line ~242 ['my-command.md', 'my-plugin', 'my-command.md'],
c) CODEX_SKILL_MAPPINGS:
// Line ~280 ['my-command', 'my-plugin', 'my-command.md', 'Use when user asks to "trigger phrase". Description of capability.'],
3. Update marketplace.json:
// .claude-plugin/marketplace.json - Add to plugins array
{
"name": "my-plugin",
"version": "3.5.0",
"description": "...",
"path": "plugins/my-plugin"
}
4. Create plugin.json:
plugins/my-plugin/.claude-plugin/plugin.json
5. Update docs:
- •
docs/INSTALLATION.md- Add install command - •
README.md- Add to commands table - •CHANGELOG.md - Add under "Added"
6. Validate:
npm run validate # Will catch missing mappings
New Agent (e.g., my-agent)
1. Create agent file:
plugins/my-plugin/agents/my-agent.md
With proper frontmatter:
--- name: my-agent description: Brief description tools: Bash(git:*), Read, Edit model: sonnet ---
2. Installer handles automatically:
- •✅ Copies to
~/.config/opencode/agents/my-agent.md - •✅ Transforms frontmatter (tools → permissions)
- •✅ Strips model if --strip-models flag
- •✅ Normalizes Windows paths in require()
3. No Codex changes needed - Codex uses MCP, not agents
4. Validate:
npm run validate:counts # Will update agent count if added
New Skill (e.g., my-skill)
1. Create skill directory and file:
plugins/my-plugin/skills/my-skill/SKILL.md
With frontmatter:
--- name: my-skill description: "Use when user asks to \"trigger\". Description." metadata: short-description: "Brief" ---
2. If user-invocable (Codex): Add to CODEX_SKILL_MAPPINGS in bin/cli.js
3. Validate:
npm run validate:counts # Will check skill count matches
New MCP Tool
1. Add to mcp-server/index.js:
a) TOOLS array:
const TOOLS = [
// ...
{
name: 'my_tool',
description: 'Tool description',
inputSchema: {
type: 'object',
properties: { param: { type: 'string' } },
required: ['param']
}
}
];
b) toolHandlers object:
const toolHandlers = {
// ...
my_tool: async (params) => {
// Implementation
return xplat.successResponse({ result: 'data' });
}
};
2. Update marketplace.json:
// .claude-plugin/marketplace.json
"mcpServer": {
"tools": ["workflow_status", ..., "my_tool"]
}
3. Update docs:
- •
README.md- Add to features if user-facing
Common Release Pitfalls (And How Validators Catch Them)
Pitfall 1: Forgot to Update Plugin Version
# Symptoms: - package.json says 3.6.0 - plugins/next-task/.claude-plugin/plugin.json says 3.5.0 # Caught by: npm run validate:counts # → [ERROR] Version misalignment
Pitfall 2: Hardcoded .claude/ Path
# Symptoms: - Agent contains: `.claude/flow.json` - OpenCode and Codex break # Caught by: npm run validate:paths # → [ERROR] Hardcoded path found in agents/my-agent.md:42
Pitfall 3: Agent Count Mismatch
# Symptoms: - Added new agent - README still says "39 agents" - Actually 40 now # Caught by: npm run validate:counts # → [ERROR] README.md agents: Expected 40, Actual 39
Pitfall 4: Missing Trigger Phrase (Codex)
# Symptoms: - Codex skill has: description: "Master orchestrator" - No trigger phrases - Codex doesn't know when to invoke # Caught by: /enhance --focus=skills # → [MEDIUM] Description missing trigger phrases
Pitfall 5: OpenCode Label Too Long
# Symptoms: - AskUserQuestion label: "#123: Fix authentication timeout in ProfileScreen component" - 65 characters - OpenCode throws error # Prevention: Use truncateLabel() function in task-discoverer agent Max 30 chars for OpenCode compatibility
Pitfall 6: Forgot to Run /enhance
# Symptoms: - Modified agents/skills - Didn't run /enhance - Pushed anyway # Caught by: Pre-push hook prompts: "Have you run /enhance? (y/N)" Blocks push if "N"
Automation Opportunities (Always Consider)
Current Automations
- •✅ lib/ sync - Pre-commit hook auto-syncs lib/ to plugins/
- •✅ Validation - Pre-push hook runs 6 validators
- •✅ Agent transformation - Installer auto-transforms frontmatter
- •✅ Model stripping -
--strip-modelsflag for OpenCode - •✅ Version checking - validate:counts catches misalignment
- •✅ Path checking - validate:paths catches hardcoded paths
- •✅ /enhance enforcement - Pre-push hook prompts
Potential Improvements
1. Version Bump Automation
# Current: Manual find/replace in 11 files # Opportunity: Script that updates all version fields atomically # Script: scripts/bump-version.js <new-version>
2. CHANGELOG Entry Generation
# Current: Manual entry creation # Opportunity: Parse git log since last tag, categorize commits # Script: scripts/generate-changelog-entry.js
3. Cross-Platform Install Test
# Current: Manual testing on each platform # Opportunity: Docker containers for each platform, automated smoke tests # Script: scripts/test-install-all-platforms.sh
4. Agent Count Auto-Update
# Current: Manual count updates in docs # Opportunity: Extract counts from filesystem, update docs automatically # Script: scripts/update-doc-counts.js
5. Marketplace.json Sync
# Current: Manual updates to .claude-plugin/marketplace.json # Opportunity: Generate from plugins/ directory structure # Script: scripts/sync-marketplace-manifest.js
If you identify more automation opportunities, ADD THEM HERE.
Your Responsibilities (Agent Using This Skill)
Before Push
- •
Run validations:
bashnpm run validate
Fix any issues found.
- •
If modified enhanced content (agents/skills/hooks/prompts):
bash/enhance
Address HIGH certainty findings.
- •
Check for misalignments in this skill:
- •New script added but not documented here?
- •New platform difference discovered?
- •New validation pattern needed?
- •UPDATE THIS FILE if yes
- •
Think about automation:
- •Can this manual step be automated?
- •Is there a pattern we're repeating?
- •ADD to "Potential Improvements" section
Before Release
- •
Read release checklist:
bashcat checklists/release.md
- •
Update all 11 version fields:
- •Use version bump script (if exists) or manual find/replace
- •Validate:
npm run validate:counts
- •
Update CHANGELOG.md:
- •Add entry at top with date
- •Categorize: Added/Changed/Fixed/Removed
- •
Run full validation:
bashnpm test # 1400+ tests npm run validate # All 6 validators npm pack --dry-run # Package builds
- •
Test cross-platform install:
bashnpm pack npm install -g ./agentsys-*.tgz echo "1 2 3" | agentsys # Test installer
- •
Commit and tag:
bashgit add -A git commit -m "chore: release v3.X.0-rc.N" git tag v3.X.0-rc.N git push origin main --tags
- •
Verify npm publish:
bash# Wait for GitHub Actions release workflow npm view agentsys@rc version # For RC npm view agentsys version # For production
Update Misalignments
If you find any of these while working:
New script not documented here:
- •Read the script to understand what it does
- •Add to relevant section (Validation Suite, Installation, etc.)
- •Commit: "docs(maintain-cross-platform): document {script-name}"
New platform difference discovered:
- •Test on all 3 platforms to confirm
- •Add to "Platform Differences" matrix
- •Add to "Common Pitfalls" if it causes issues
- •Update relevant validation script if needed
New validation pattern needed:
- •Consider: Can existing validator be extended?
- •If new validator needed, create in
scripts/validate-{name}.js - •Add to
package.jsonvalidate script - •Document in "Validation Suite" section
- •Update "Pre-Push Hook" section if relevant
Automation opportunity identified:
- •Add to "Potential Improvements" with description
- •Estimate effort (simple/medium/complex)
- •Note dependencies (tools needed, testing required)
Quick Reference: File Counts
Plugins: 9
- •next-task
- •enhance
- •ship
- •perf
- •audit-project
- •deslop
- •drift-detect
- •repo-map
- •sync-docs
Agents: 39 total = 29 file-based + 10 role-based
File-based (29): Count files in plugins/*/agents/*.md
- •next-task: 12
- •enhance: 9
- •perf: 6
- •drift-detect: 1
- •repo-map: 1
Role-based (10): Defined inline in audit-project command
- •code-quality-reviewer, security-expert, performance-engineer, test-quality-guardian
- •architecture-reviewer, database-specialist, api-designer
- •frontend-specialist, backend-specialist, devops-reviewer
Skills: 23 - Count SKILL.md in plugins/*/skills/*/SKILL.md
- •next-task: 4 (orchestrate-review, discover-tasks, validate-delivery, update-docs)
- •enhance: 10 (orchestrator, reporter, agent-prompts, claude-memory, docs, plugins, prompts, hooks, skills)
- •perf: 8 (analyzer, baseline, benchmark, code-paths, investigation-logger, profile, theory, theory-tester)
- •drift-detect: 1 (drift-analysis)
- •repo-map: 1 (repo-mapping)
Version Fields: 11 files
- •1x package.json
- •1x .claude-plugin/plugin.json
- •9x plugins/*/.claude-plugin/plugin.json
- •1x mcp-server/index.js (MCP_SERVER_VERSION constant)
Constraints
- •NEVER break existing functionality - Production project with real users
- •ALWAYS test on all 3 platforms - At least smoke test
- •ALWAYS update this skill - If you find gaps or improvements
- •ALWAYS run validation - Pre-push hook enforces this
- •Documentation must stay accurate - Validators enforce this
Output Format
When using this skill, output:
## Cross-Platform Compatibility Check ### Validations Run - [OK/ERROR] validate:plugins - [OK/ERROR] validate:cross-platform - [OK/ERROR] validate:consistency - [OK/ERROR] validate:paths - [OK/ERROR] validate:counts - [OK/ERROR] validate:platform-docs ### Issues Found [List any issues with file:line references] ### Misalignments in This Skill [List any outdated information found in this skill] ### Automation Opportunities [List any manual steps that could be automated] ### Actions Taken [List files updated/created] ### Next Steps [List remaining work]
Version
Skill Version: 1.0.0 Last Updated: 2026-01-30 Covers: AgentSys v5.0.0 architecture
Update this skill when:
- •New platform added
- •New validation script created
- •Installation process changes
- •New automation implemented
- •Platform differences discovered