Skip to content

feat(docs): rewrite README, restructure guide/reference, fix navbar 404 #52

Description

@espetro

What

Docs restructuring + README rewrite. All items completed on .

Changes

  • Navbar 404 fixed: created landing page
  • compat-matrix moved: → (title rename, tier-1 wording reduced to 2 product-requirement mentions)
  • Sidebar restructured: new Authoring group (Creating Plugins + Porting), Platforms group (Capability Matrix), Ecosystems
  • Cross-links updated: adapters, ecosystem, tools, porting, prd, AGENTS.md, validate.ts — all now point to
  • introduction.md rewritten: 4 primary harnesses named explicitly, custom harnesses section → extending.md, tier-1 collapsed to table + capability matrix ref
  • README.md rewritten: ~30 lines, curl install, npx fallback, plugin example, create/port docs link, llms.txt link, sponsor at bottom
  • Docs build verified: Scope: 20 of 21 workspace projects
    docs build$ vitepress build
    packages/contract build$ tsc && node dist/generate-schema.js
    packages/schema build$ tsc
    docs build: vitepress v1.6.4
    docs build: - building client + server bundles...
    packages/schema build: Done
    docs build: llmstxt » vitepress-plugin-llms initialized (client build) with workDir: /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/docs
    packages/contract build: [contract] manifest.schema.json generated → /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/packages/contract/manifest.schema.json
    packages/contract build: Done
    docs build: llmstxt » Build started, file collection cleared
    docs build: llmstxt » Processing 19 markdown files from /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/docs
    docs build: llmstxt » Generating llms.txt...
    docs build: llmstxt » Generating full documentation bundle (llms-full.txt)...
    docs build: llmstxt » ✓ Processed reference/agent-paths.md
    docs build: llmstxt » ✓ Processed reference/commands.md
    docs build: llmstxt » ✓ Processed guide/creating-plugins.md
    docs build: llmstxt » ✓ Processed guide/ecosystem.md
    docs build: llmstxt » ✓ Processed guide/capability-matrix.md
    docs build: llmstxt » ✓ Processed guide/extending.md
    docs build: llmstxt » ✓ Processed reference/adapters.md
    docs build: llmstxt » ✓ Processed guide/hooks.md
    docs build: llmstxt » ✓ Processed reference/schema.md
    docs build: llmstxt » ✓ Processed guide/introduction.md
    docs build: llmstxt » ✓ Generated llms.txt (~627 tokens, 2.44 kB) with 19 documentation links
    docs build: llmstxt » ✓ Processed guide/manifest.md
    docs build: llmstxt » ✓ Processed guide/quick-start.md
    docs build: llmstxt » ✓ Processed guide/linting.md
    docs build: llmstxt » ✓ Processed reference.md
    docs build: llmstxt » ✓ Processed guide/porting.md
    docs build: llmstxt » ✓ Processed guide/installation.md
    docs build: llmstxt » ✓ Processed guide/tools.md
    docs build: llmstxt » ✓ Processed guide/mcp-servers.md
    docs build: llmstxt » ✓ Generated llms-full.txt (~25.5K tokens, 98.4 kB) with 19 markdown files
    docs build: llmstxt » ✓ Processed guide/skills.md
    docs build: (!) Some chunks are larger than 500 kB after minification. Consider:
    docs build: - Using dynamic import() to code-split the application
    docs build: - Use build.rollupOptions.output.manualChunks to improve chunking: https://rollupjs.org/configuration-options/#output-manualchunks
    docs build: - Adjust chunk size limit for this warning via build.chunkSizeWarningLimit.
    docs build: llmstxt » vitepress-plugin-llms initialized (SSR build) with workDir: /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/docs
    docs build: llmstxt » Build started, file collection cleared
    docs build: llmstxt » Skipping LLMs docs generation in SSR build
    docs build: �[32m✓�[0m building client + server bundles...
    docs build: - rendering pages...
    docs build: �[32m✓�[0m rendering pages...
    docs build: - generating sitemap...
    docs build: �[32m✓�[0m generating sitemap...
    docs build: build complete in 7.33s.
    docs build: Done
    packages/pipeline build$ tsup src/index.ts --format cjs,esm --dts
    packages/security build$ tsc
    packages/ingest build$ tsc
    packages/pipeline build: CLI Building entry: src/index.ts
    packages/pipeline build: CLI Using tsconfig: tsconfig.json
    packages/pipeline build: CLI tsup v8.5.1
    packages/pipeline build: CLI Target: es2022
    packages/pipeline build: CJS Build start
    packages/pipeline build: ESM Build start
    packages/pipeline build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/pipeline build: package.json:12:6:
    packages/pipeline build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/pipeline build: ╵ �[32m~~~~~~~�[0m
    packages/pipeline build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/pipeline build: package.json:10:6:
    packages/pipeline build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/pipeline build: ╵ �[32m~~~~~~~~�[0m
    packages/pipeline build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/pipeline build: package.json:11:6:
    packages/pipeline build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/pipeline build: ╵ �[32m~~~~~~~~~�[0m
    packages/ingest build: Done
    packages/pipeline build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/pipeline build: package.json:12:6:
    packages/pipeline build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/pipeline build: ╵ �[32m~~~~~~~�[0m
    packages/pipeline build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/pipeline build: package.json:10:6:
    packages/pipeline build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/pipeline build: ╵ �[32m~~~~~~~~�[0m
    packages/pipeline build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/pipeline build: package.json:11:6:
    packages/pipeline build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/pipeline build: ╵ �[32m~~~~~~~~~�[0m
    packages/pipeline build: ESM dist/index.js 4.11 KB
    packages/pipeline build: ESM ⚡️ Build success in 59ms
    packages/pipeline build: CJS dist/index.cjs 5.27 KB
    packages/pipeline build: CJS ⚡️ Build success in 59ms
    packages/security build: Done
    packages/pipeline build: DTS Build start
    packages/pipeline build: DTS ⚡️ Build success in 395ms
    packages/pipeline build: DTS dist/index.d.cts 4.09 KB
    packages/pipeline build: DTS dist/index.d.ts 4.09 KB
    packages/pipeline build: Done
    packages/compile build$ tsc
    packages/compile build: Done
    packages/store build$ tsc
    packages/store build: Done
    packages/core build$ tsc
    packages/core build: Done
    packages/adapter-claude build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-codex build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-gemini build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-copilot build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-claude build: CLI Building entry: src/index.ts
    packages/adapter-codex build: CLI Building entry: src/index.ts
    packages/adapter-gemini build: CLI Building entry: src/index.ts
    packages/adapter-copilot build: CLI Building entry: src/index.ts
    packages/adapter-claude build: CLI Using tsconfig: tsconfig.json
    packages/adapter-claude build: CLI tsup v8.5.1
    packages/adapter-codex build: CLI Using tsconfig: tsconfig.json
    packages/adapter-codex build: CLI tsup v8.5.1
    packages/adapter-gemini build: CLI Using tsconfig: tsconfig.json
    packages/adapter-gemini build: CLI tsup v8.5.1
    packages/adapter-copilot build: CLI Using tsconfig: tsconfig.json
    packages/adapter-copilot build: CLI tsup v8.5.1
    packages/adapter-claude build: CLI Target: es2022
    packages/adapter-claude build: CJS Build start
    packages/adapter-codex build: CLI Target: es2022
    packages/adapter-claude build: ESM Build start
    packages/adapter-copilot build: CLI Target: es2022
    packages/adapter-gemini build: CLI Target: es2020
    packages/adapter-codex build: CJS Build start
    packages/adapter-codex build: ESM Build start
    packages/adapter-gemini build: CJS Build start
    packages/adapter-gemini build: ESM Build start
    packages/adapter-copilot build: CJS Build start
    packages/adapter-copilot build: ESM Build start
    packages/adapter-claude build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-claude build: package.json:12:6:
    packages/adapter-claude build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-claude build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-claude build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-claude build: package.json:10:6:
    packages/adapter-claude build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-claude build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-claude build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-claude build: package.json:11:6:
    packages/adapter-claude build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-claude build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-claude build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-claude build: package.json:12:6:
    packages/adapter-claude build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-claude build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-claude build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-claude build: package.json:10:6:
    packages/adapter-claude build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-claude build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-claude build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-claude build: package.json:11:6:
    packages/adapter-claude build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-claude build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-gemini build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-gemini build: package.json:12:6:
    packages/adapter-gemini build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-gemini build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-gemini build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-gemini build: package.json:10:6:
    packages/adapter-gemini build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-gemini build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-gemini build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-gemini build: package.json:11:6:
    packages/adapter-gemini build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-gemini build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-gemini build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-gemini build: package.json:12:6:
    packages/adapter-gemini build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-gemini build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-gemini build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-gemini build: package.json:10:6:
    packages/adapter-gemini build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-gemini build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-gemini build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-gemini build: package.json:11:6:
    packages/adapter-gemini build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-gemini build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-copilot build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-copilot build: package.json:11:6:
    packages/adapter-copilot build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-copilot build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-copilot build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-copilot build: package.json:9:6:
    packages/adapter-copilot build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-copilot build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-copilot build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-copilot build: package.json:10:6:
    packages/adapter-copilot build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-copilot build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-copilot build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-copilot build: package.json:11:6:
    packages/adapter-copilot build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-copilot build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-copilot build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-copilot build: package.json:9:6:
    packages/adapter-copilot build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-copilot build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-copilot build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-copilot build: package.json:10:6:
    packages/adapter-copilot build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-copilot build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-claude build: CJS dist/index.cjs 16.80 KB
    packages/adapter-claude build: CJS ⚡️ Build success in 31ms
    packages/adapter-claude build: ESM dist/index.js 15.67 KB
    packages/adapter-claude build: ESM ⚡️ Build success in 31ms
    packages/adapter-codex build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-codex build: package.json:11:6:
    packages/adapter-codex build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-codex build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-codex build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-codex build: package.json:9:6:
    packages/adapter-codex build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-codex build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-codex build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-codex build: package.json:10:6:
    packages/adapter-codex build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-codex build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-gemini build: CJS dist/index.cjs 11.03 KB
    packages/adapter-gemini build: CJS ⚡️ Build success in 31ms
    packages/adapter-gemini build: ESM dist/index.js 9.84 KB
    packages/adapter-gemini build: ESM ⚡️ Build success in 31ms
    packages/adapter-copilot build: CJS dist/index.js 18.30 KB
    packages/adapter-copilot build: CJS ⚡️ Build success in 31ms
    packages/adapter-copilot build: ESM dist/index.mjs 17.03 KB
    packages/adapter-copilot build: ESM ⚡️ Build success in 31ms
    packages/adapter-codex build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-codex build: package.json:11:6:
    packages/adapter-codex build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-codex build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-codex build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-codex build: package.json:9:6:
    packages/adapter-codex build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-codex build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-codex build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-codex build: package.json:10:6:
    packages/adapter-codex build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-codex build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-codex build: ESM dist/index.mjs 10.38 KB
    packages/adapter-codex build: ESM ⚡️ Build success in 34ms
    packages/adapter-codex build: CJS dist/index.js 11.87 KB
    packages/adapter-codex build: CJS ⚡️ Build success in 35ms
    packages/adapter-gemini build: DTS Build start
    packages/adapter-copilot build: DTS Build start
    packages/adapter-codex build: DTS Build start
    packages/adapter-claude build: DTS Build start
    packages/adapter-gemini build: DTS ⚡️ Build success in 415ms
    packages/adapter-gemini build: DTS dist/index.d.cts 1.63 KB
    packages/adapter-gemini build: DTS dist/index.d.ts 1.63 KB
    packages/adapter-gemini build: Done
    packages/adapter-kimi build$ tsup src/index.ts --format cjs,esm --dts --clean
    packages/adapter-copilot build: DTS ⚡️ Build success in 452ms
    packages/adapter-copilot build: DTS dist/index.d.ts 9.22 KB
    packages/adapter-copilot build: DTS dist/index.d.mts 9.22 KB
    packages/adapter-copilot build: Done
    packages/adapter-opencode build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-codex build: DTS ⚡️ Build success in 701ms
    packages/adapter-codex build: DTS dist/index.d.ts 3.96 KB
    packages/adapter-codex build: DTS dist/index.d.mts 3.96 KB
    packages/adapter-codex build: Done
    packages/adapter-pimono build$ tsup src/index.ts --format cjs,esm --dts
    packages/adapter-claude build: DTS ⚡️ Build success in 755ms
    packages/adapter-claude build: DTS dist/index.d.cts 3.76 KB
    packages/adapter-claude build: DTS dist/index.d.ts 3.76 KB
    packages/adapter-claude build: Done
    packages/migrate build$ tsc
    packages/adapter-kimi build: CLI Building entry: src/index.ts
    packages/adapter-kimi build: CLI Using tsconfig: tsconfig.json
    packages/adapter-kimi build: CLI tsup v8.5.1
    packages/adapter-kimi build: CLI Target: es2020
    packages/adapter-kimi build: CLI Cleaning output folder
    packages/adapter-kimi build: CJS Build start
    packages/adapter-kimi build: ESM Build start
    packages/adapter-kimi build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-kimi build: package.json:11:6:
    packages/adapter-kimi build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-kimi build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-kimi build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-kimi build: package.json:9:6:
    packages/adapter-kimi build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-kimi build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-kimi build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-kimi build: package.json:10:6:
    packages/adapter-kimi build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-kimi build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-kimi build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-kimi build: package.json:11:6:
    packages/adapter-kimi build: �[37m 11 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-kimi build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-kimi build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-kimi build: package.json:9:6:
    packages/adapter-kimi build: �[37m 9 │ �[32m"import"�[37m: "./dist/index.mjs",
    packages/adapter-kimi build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-kimi build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-kimi build: package.json:10:6:
    packages/adapter-kimi build: �[37m 10 │ �[32m"require"�[37m: "./dist/index.js",
    packages/adapter-kimi build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-kimi build: ESM dist/index.mjs 14.69 KB
    packages/adapter-kimi build: ESM ⚡️ Build success in 30ms
    packages/adapter-kimi build: CJS dist/index.js 15.92 KB
    packages/adapter-kimi build: CJS ⚡️ Build success in 30ms
    packages/adapter-opencode build: CLI Building entry: src/index.ts
    packages/adapter-opencode build: CLI Using tsconfig: tsconfig.json
    packages/adapter-opencode build: CLI tsup v8.5.1
    packages/adapter-opencode build: CLI Target: es2022
    packages/adapter-opencode build: CJS Build start
    packages/adapter-opencode build: ESM Build start
    packages/adapter-opencode build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-opencode build: package.json:12:6:
    packages/adapter-opencode build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-opencode build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-opencode build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-opencode build: package.json:10:6:
    packages/adapter-opencode build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-opencode build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-opencode build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-opencode build: package.json:11:6:
    packages/adapter-opencode build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-opencode build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-opencode build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-opencode build: package.json:12:6:
    packages/adapter-opencode build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-opencode build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-opencode build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-opencode build: package.json:10:6:
    packages/adapter-opencode build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-opencode build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-opencode build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-opencode build: package.json:11:6:
    packages/adapter-opencode build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-opencode build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-opencode build: ESM dist/index.js 14.39 KB
    packages/adapter-opencode build: ESM ⚡️ Build success in 38ms
    packages/adapter-opencode build: CJS dist/index.cjs 15.86 KB
    packages/adapter-opencode build: CJS ⚡️ Build success in 39ms
    packages/adapter-pimono build: CLI Building entry: src/index.ts
    packages/adapter-pimono build: CLI Using tsconfig: tsconfig.json
    packages/adapter-pimono build: CLI tsup v8.5.1
    packages/adapter-pimono build: CLI Target: es2022
    packages/adapter-pimono build: CJS Build start
    packages/adapter-pimono build: ESM Build start
    packages/adapter-kimi build: DTS Build start
    packages/adapter-pimono build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-pimono build: package.json:12:6:
    packages/adapter-pimono build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-pimono build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-pimono build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-pimono build: package.json:10:6:
    packages/adapter-pimono build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-pimono build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-pimono build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-pimono build: package.json:11:6:
    packages/adapter-pimono build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-pimono build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-pimono build: WARN �[33m▲ �[43;33m[�[43;30mWARNING�[43;33m]�[0m �[1mThe condition "types" here will never be used as it comes after both "import" and "require"�[0m [package.json]
    packages/adapter-pimono build: package.json:12:6:
    packages/adapter-pimono build: �[37m 12 │ �[32m"types"�[37m: "./dist/index.d.ts"
    packages/adapter-pimono build: ╵ �[32m~~~~~~~�[0m
    packages/adapter-pimono build: The "import" condition comes earlier and will be used for all "import" statements:
    packages/adapter-pimono build: package.json:10:6:
    packages/adapter-pimono build: �[37m 10 │ �[32m"import"�[37m: "./dist/index.js",
    packages/adapter-pimono build: ╵ �[32m~~~~~~~~�[0m
    packages/adapter-pimono build: The "require" condition comes earlier and will be used for all "require" calls:
    packages/adapter-pimono build: package.json:11:6:
    packages/adapter-pimono build: �[37m 11 │ �[32m"require"�[37m: "./dist/index.cjs",
    packages/adapter-pimono build: ╵ �[32m~~~~~~~~~�[0m
    packages/adapter-pimono build: CJS dist/index.cjs 25.60 KB
    packages/adapter-pimono build: CJS ⚡️ Build success in 44ms
    packages/adapter-pimono build: ESM dist/index.js 24.25 KB
    packages/adapter-pimono build: ESM ⚡️ Build success in 44ms
    packages/adapter-opencode build: DTS Build start
    packages/adapter-pimono build: DTS Build start
    packages/migrate build: Done
    packages/adapter-kimi build: DTS ⚡️ Build success in 403ms
    packages/adapter-kimi build: DTS dist/index.d.ts 6.33 KB
    packages/adapter-kimi build: DTS dist/index.d.mts 6.33 KB
    packages/adapter-kimi build: Done
    packages/adapter-opencode build: DTS ⚡️ Build success in 409ms
    packages/adapter-opencode build: DTS dist/index.d.cts 3.81 KB
    packages/adapter-opencode build: DTS dist/index.d.ts 3.81 KB
    packages/adapter-opencode build: Done
    packages/adapter-pimono build: DTS ⚡️ Build success in 298ms
    packages/adapter-pimono build: DTS dist/index.d.cts 5.45 KB
    packages/adapter-pimono build: DTS dist/index.d.ts 5.45 KB
    packages/adapter-pimono build: Done
    packages/cli build$ tsc
    packages/cli build: Done
    plugins/example-custom-adapter build$ agentplugins build
    plugins/example-logger build$ agentplugins build
    plugins/example-logger build: 🌉 AgentPlugins Build
    plugins/example-logger build: Plugin: agentplugins-example-logger v0.1.0
    plugins/example-logger build: Targets: claude, codex, copilot, gemini, kimi, opencode, pimono
    plugins/example-logger build: Output: /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/plugins/example-logger/dist
    plugins/example-logger build: 🔍 Running universal validation...
    plugins/example-logger build: 🔍 Running lint...
    plugins/example-logger build: ✗ [name] Plugin name must not be prefixed with "agentplugin" (anti-self-reference)
    plugins/example-logger build: → Choose a name that describes what the plugin does
    plugins/example-logger build: ⚠ [license] License is missing — declare one for redistribution clarity
    plugins/example-logger build: → Common choices: MIT, Apache-2.0, ISC
    plugins/example-custom-adapter build: 🌉 AgentPlugins Build
    plugins/example-custom-adapter build: Plugin: my-custom-plugin v0.1.0
    plugins/example-custom-adapter build: Targets: claude, my-harness
    plugins/example-custom-adapter build: Output: /Users/joaquin.terrasamoya/Documents/prjcts/_own/agentplugins/plugins/example-custom-adapter/dist
    plugins/example-custom-adapter build: 🔍 Running universal validation...
    plugins/example-custom-adapter build: 🔍 Running lint...
    plugins/example-custom-adapter build: ⚠ [license] License is missing — declare one for redistribution clarity
    plugins/example-custom-adapter build: → Common choices: MIT, Apache-2.0, ISC
    plugins/example-logger build: 📦 Building for claude...
    plugins/example-custom-adapter build: 📦 Building for claude...
    plugins/example-custom-adapter build: ✓ Built 2 files
    plugins/example-custom-adapter build: ⓘ Copy the generated files to your Claude Code project root:
    plugins/example-custom-adapter build: ⓘ cp -r .claude-plugin hooks/ skills/ .mcp.json /
    plugins/example-custom-adapter build: ⓘ
    plugins/example-custom-adapter build: ⓘ Environment variables available at runtime:
    plugins/example-custom-adapter build: ⓘ ${CLAUDE_PLUGIN_ROOT} — path to the plugin directory
    plugins/example-custom-adapter build: ⓘ ${CLAUDE_PLUGIN_DATA} — path to plugin data storage
    plugins/example-custom-adapter build: ⓘ
    plugins/example-custom-adapter build: ⓘ Install location: ~/.claude/plugins/ or project-local .claude-plugin/
    plugins/example-custom-adapter build: 📦 Building for my-harness...
    plugins/example-logger build: ✓ Built 9 files
    plugins/example-logger build: ⚠ 5 inline handler(s) wrapped as command scripts. These require Node.js at runtime.
    plugins/example-logger build: ⓘ Copy the generated files to your Claude Code project root:
    plugins/example-logger build: ⓘ cp -r .claude-plugin hooks/ skills/ .mcp.json /
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Environment variables available at runtime:
    plugins/example-logger build: ⓘ ${CLAUDE_PLUGIN_ROOT} — path to the plugin directory
    plugins/example-logger build: ⓘ ${CLAUDE_PLUGIN_DATA} — path to plugin data storage
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Install location: ~/.claude/plugins/ or project-local .claude-plugin/
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ NOTE: 5 inline handler(s) require Node.js to execute.
    plugins/example-logger build: ⓘ Wrapper scripts are in hooks/.js
    plugins/example-logger build: 📦 Building for codex...
    plugins/example-custom-adapter build: ✓ Built 2 files
    plugins/example-custom-adapter build: ✅ Build complete!
    plugins/example-custom-adapter build: Install your plugins:
    plugins/example-custom-adapter build: claude: cp -r dist/claude ~/.claude/skills/my-custom-plugin
    plugins/example-custom-adapter build: my-harness: See my-harness documentation
    plugins/example-logger build: ✓ Built 7 files
    plugins/example-logger build: ⚠ Skipping unsupported hook "sessionEnd" – not included in compiled output.
    plugins/example-logger build: ⚠ 4 inline handler(s) wrapped as command scripts. Requires Node.js at runtime.
    plugins/example-logger build: ⓘ OpenAI Codex Plugin
    plugins/example-logger build: ⓘ ===================
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Plugin "agentplugins-example-logger" v0.1.0 compiled for Codex.
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Install:
    plugins/example-logger build: ⓘ 1. Copy the generated files into your project root (or a sub-directory).
    plugins/example-logger build: ⓘ 2. Ensure the hook scripts under hooks/ are executable:
    plugins/example-logger build: ⓘ chmod +x hooks/
    .js
    plugins/example-logger build: ⓘ 3. Set environment variables:
    plugins/example-logger build: ⓘ export PLUGIN_ROOT=/path/to/plugin
    plugins/example-logger build: ⓘ export PLUGIN_DATA=/path/to/plugin/data
    plugins/example-logger build: ⓘ 4. Codex will auto-discover .codex-plugin/plugin.json when running
    plugins/example-logger build: ⓘ in the project directory.
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Hook protocol:
    plugins/example-logger build: ⓘ - Codex sends JSON events to each hook via stdin.
    plugins/example-logger build: ⓘ - Hooks respond with JSON on stdout.
    plugins/example-logger build: ⓘ - Exit code 0 = success / allow the operation.
    plugins/example-logger build: ⓘ - Exit code 2 = block (for Stop / SubagentStop hooks).
    plugins/example-logger build: ⓘ
    plugins/example-logger build: ⓘ Output formats:
    plugins/example-logger build: ⓘ SessionStart → { "hookSpecificOutput": { "hookEventName": "SessionStart", "additionalContext": "..." } }
    plugins/example-logger build: ⓘ PreToolUse → { "systemMessage": "Warning message" }
    plugins/example-logger build: ⓘ Stop / SubagentStop → { "decision": "block", "reason": "..." } (or exit 2)
    plugins/example-logger build: ⓘ
    plugins/example-logger build: 📦 Building for copilot...
    plugins/example-custom-adapter build: Done
    plugins/example-logger build: ✓ Built 3 files
    plugins/example-logger build: 📦 Building for gemini...
    plugins/example-logger build: ✓ Built 8 files
    plugins/example-logger build: 📦 Building for kimi...
    plugins/example-logger build: ✓ Built 8 files
    plugins/example-logger build: ⚠ 3 inline handler(s) wrapped as command scripts. Requires Node.js at runtime.
    plugins/example-logger build: 📦 Building for opencode...
    plugins/example-logger build: ✓ Built 2 files
    plugins/example-logger build: ⓘ cp agentplugins-example-logger.ts .opencode/plugins/
    plugins/example-logger build: ⓘ cp opencode.json .opencode/plugins/
    plugins/example-logger build: 📦 Building for pimono...
    plugins/example-logger build: ✓ Built 1 file
    plugins/example-logger build: ✅ Build complete!
    plugins/example-logger build: Install your plugins:
    plugins/example-logger build: claude: cp -r dist/claude ~/.claude/skills/agentplugins-example-logger
    plugins/example-logger build: codex: cp -r dist/codex ~/.codex/plugins/
    plugins/example-logger build: copilot: copilot plugin install ./dist/copilot
    plugins/example-logger build: gemini: gemini extensions install ./dist/gemini
    plugins/example-logger build: kimi: cp -r dist/kimi ~/.kimi/plugins/
    plugins/example-logger build: opencode: cp dist/opencode/*.ts .opencode/plugins/
    plugins/example-logger build: pimono: cp -r dist/pimono ~/.pi/agent/extensions/
    plugins/example-logger build: Done passes clean

Linked PR

See PR on branch.

Fields

  • type: documentation
  • Effort: small

Metadata

Metadata

Assignees

No one assigned

    Labels

    documentationImprovements or additions to documentation

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions