Skip to content

feat: Codex remote marketplace with release-codex orphan branch#58

Open
MatthewYe wants to merge 28 commits into
mainfrom
feat/dual-platform
Open

feat: Codex remote marketplace with release-codex orphan branch#58
MatthewYe wants to merge 28 commits into
mainfrom
feat/dual-platform

Conversation

@MatthewYe

Copy link
Copy Markdown
Owner

Summary

Adds Git-based remote marketplace support for the Codex plugin autopilot-toolkit-codex.

Changes

  • .agents/plugins/marketplace.json — Marketplace source-of-truth (marketplace autopilot-toolkit, plugin autopilot-toolkit-codex)
  • .github/workflows/release.yml — CI job triggered on tag push (v*) or manual workflow_dispatch, rebuilds codex and force-pushes release-codex
  • docs/adr/0005-codex-remote-marketplace.md — Full ADR documenting the design
  • AGENTS.md — Remove Karpathy principles (now injected from packages/core/)
  • agents/*.md — Remove name: frontmatter and OP_ONLY/CDX_ONLY markers (platform differences now handled at build time)
  • skills/skill-creator/scripts/__tests__/*.ts — Fix test fixture paths from test-fixtures/ to __fixtures__/
  • .gitignore — Add packages/*/principles/

User install flow (after merge + tag)

codex plugin marketplace add MatthewYe/opencode-toolbox --ref release-codex --sparse .agents/plugins --sparse packages/codex
codex plugin add autopilot-toolkit-codex@autopilot-toolkit

Verification steps

See PR description.

MatthewYe added 18 commits June 16, 2026 18:04
- Rename @matthewye/opencode-toolbox to @matthewye/autopilot-toolkit
- Extract shared content loading to src/shared.ts
- Refactor src/index.ts to use shared module, export AutopilotToolkit
- Add src/generate-codex.ts for build-time Codex artifacts
- Add name frontmatter to agent files for Codex discovery
- Generate .codex-plugin/plugin.json manifest
- Generate command-to-skill bridges for Codex
- Create templates/AGENTS.md with Karpathy principles
- Add skills/setup-autopilot for bootstrapping projects
…gin validation

- Move skills/skill-creator/scripts/__fixtures__/ to test-fixtures/skill-creator/
  (prevents Codex from scanning intentionally broken test SKILL.md files)
- Update 5 test files to reference new fixture path
- Add .agents/plugins/marketplace.json for one-command Codex install
- Regenerate .codex-plugin/plugin.json with defaultPrompt fix
- Fix generate-codex.ts: per-skill symlinks, skip deprecated + disable-model-invocation skills
- Remove fixture cleanup hack from generate-codex.ts (no longer needed)
The earlier build run's cleanup hack had deleted these SKILL.md files
before the mv operation. Restored all 24 fixture files from git history.
- generate-codex.ts now creates templates/agents/*.toml from agents/*.md
  (Codex only discovers agents from .codex/agents/*.toml, not plugin agents/)
- setup-autopilot skill copies .toml files to .codex/agents/ automatically
- Updated setup-autopilot SKILL.md with actionable cp commands
…codex.ts

- Upstream skills now copied as real directories into skills/ (no symlinks)
  This fixes Codex skill discovery — symlinks were unreliable across install cache
- Rewritten generate-codex.ts from scratch for clarity
- Removed all _upstream- prefixed symlinks
- Remove autopilot-audit → native audit-autopilot
- Remove git-guardrails-cmd → native git-guardrails
- Remove skill-creator-cmd → native skill-creator
- Remove teach-cmd → native teach (upstream)
- Keep autopilot as standalone (no native equivalent)
- 31 skills total (was 35)
)

- Monorepo skeleton: packages/core, packages/opencode, packages/codex with bun workspaces
- Template decomposition: 30 shared/opencode/codex segments + manifest.json + build-autopilot.ts
- OpenCode plugin: packages/opencode entry importing from core, 22 skills copied at build
- Codex plugin: .codex-plugin/plugin.json, .codex/agents/*.toml generated from agents/*.md
- Lint: scripts/lint-autopilot.ts for drift detection between platform prompt outputs
- Agent dual-platform: filter-agent.ts with OP_ONLY/CDX_ONLY markers for implementer/reviewer
- Cross-issue suggestions persisted to .scratch/dual-platform-monorepo/suggestions.json
- .gitignore updated for .scratch/ and __golden__/ directories
- gitignore packages/*/skills/, packages/*/commands/, packages/*/agents/
- gitignore .DS_Store and * [0-9].* (macOS Finder dupes)
- git rm --cached build artifacts that were previously tracked
- Delete 6 junk files from root skills/ (Finder number-suffix dupes)
- Fix root build: & wait → && (was silently swallowing errors)
- Fix opencode build: filter-agent.ts was passed empty string instead of $f
- Fix both builds: mkdir -p → rm -rf && mkdir -p (clean builds, safe now that artifacts are gitignored)
#55: Unify tsconfig.build.json exclude across packages
#56: Move shared assets (agents, principles, AGENTS.md, tests) to core
#57: Retire root plugin infrastructure — delete src/, commands/, .codex-plugin/

- Delete root src/, commands/, .codex-plugin/, templates/agents/
- Clean root skills/ to 4 local skills only
- Root package.json: pure monorepo workspace root (private: true)
- Core: add agents/, principles/, templates/AGENTS.md, integration.test.ts
- Core: export getAgentsDir()/getPrinciplesDir()/getCoreDir()
- OpenCode/Codex packages now read agents & principles from core
- Update setup-autopilot SKILL.md AGENTS.md path reference
- Remove Karpathy principles from AGENTS.md (now injected from packages/core/)
- Remove name: frontmatter and OP_ONLY/CDX_ONLY markers from agent .md files
- Fix test fixture paths from test-fixtures/ to __fixtures__/
- Fix marketplace.json: correct plugin name to autopilot-toolkit-codex and source path
- Add .github/workflows/release.yml and docs/adr/0005-codex-remote-marketplace.md
@MatthewYe MatthewYe closed this Jun 22, 2026
@MatthewYe MatthewYe reopened this Jun 22, 2026
- Fix noAssignInExpressions in linters/lint-autopilot.ts
- Fix useNodejsImportProtocol and useTemplate in build-autopilot.test.ts
- Fix import organization in multiple files
- Fix formatting in packages/opencode/src/index.ts
- Reformat marketplace.json with standard JSON formatting
- Sync bun.lock with package.json
@MatthewYe MatthewYe closed this Jun 22, 2026
@MatthewYe MatthewYe reopened this Jun 22, 2026
@MatthewYe MatthewYe closed this Jun 22, 2026
@MatthewYe MatthewYe reopened this Jun 22, 2026
@MatthewYe MatthewYe closed this Jun 22, 2026
@MatthewYe MatthewYe reopened this Jun 22, 2026
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