Centralize skillify command list in SKILL.md via build-step generator
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 64/100
- Tipo de issue
- Documentación
- Claridad
- Bastante claro
- Estado de actividad
- Tranquilo
- Stack tecnológico
- node.js, typescript
- Área
- documentation
Línea de trabajo
Empieza leyendo src/cli/skillify-spec.ts para confirmar el origen de SKILLIFY_COMMANDS y el formato de salida de renderSkillifyCommands(). Revisa tests/pi/skillify-spec-drift.test.ts y los scripts de compilación de package.json para seguir los patrones existentes de pruebas de drift y pasos de compilación. Después, añade o verifica los marcadores de comandos en los tres archivos SKILL.md, implementa scripts/sync-md-commands.mjs, ejecuta npm run build y asegúrate de que las pruebas bajo tests/ detecten cualquier drift manual en SKILL.md.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Context
PR #129 introduced SKILLIFY_COMMANDS in src/cli/skillify-spec.ts — the single source of truth for the hivemind skillify ... command list. As part of #129 we centralized all TypeScript-side consumers of that list:
- 4 per-agent SessionStart inject blocks (claude-code, codex, cursor, hermes) via
renderSkillifyCommands() - The pi inline mirror in
pi/extension-source/hivemind.ts(guarded by a drift test intests/pi/skillify-spec-drift.test.ts) hivemind --helptop-level output insrc/cli/index.ts(centralized in #129 as part of the kaghni feedback)hivemind skillify --helpusage()insrc/commands/skillify.ts(centralized in #129)
What remains hand-typed are the 3 shipped SKILL.md files:
claude-code/skills/hivemind-memory/SKILL.md—## Skill Management (skillify)sectioncodex/skills/deeplake-memory/SKILL.md— same blockopenclaw/skills/SKILL.md— same block (pre-dates #129, onmainsince April)
These can't be solved the same way as the TS callers because SKILL.md is shipped Markdown — it can't import TypeScript at runtime. We need a build-step generator.
Proposed approach
-
Markers in each SKILL.md — wrap the command block in HTML-comment markers so the generator can locate it deterministically without ambiguity:
<!-- SKILLIFY_COMMANDS_START --> - `hivemind skillify` — show current scope... ... <!-- SKILLIFY_COMMANDS_END --> -
Generator script — add
scripts/sync-md-commands.mjsthat:- Imports the compiled
SKILLIFY_COMMANDSfrombundle/cli.js(ordist/skillify-spec.js) - Renders the block in the same bullet format the SKILL.md files use today
- Rewrites the content between
<!-- SKILLIFY_COMMANDS_START -->/ENDin all 3 files
- Imports the compiled
-
Wire into
npm run build— appendnode scripts/sync-md-commands.mjsto the build pipeline so the markdown can't drift in CI. -
Drift detection test — under
tests/, mirror the structure oftests/pi/skillify-spec-drift.test.ts: read each SKILL.md, parse the block between markers, assert it matches whatrenderSkillifyCommands()would produce. Fails CI if a developer edits the markdown by hand and skips the build. -
Same pattern for
ORG_COMMANDS(optional, can be a separate sub-task) — the org/auth command list (hivemind login,whoami,org list, …) is hand-typed in the same 3 SKILL.md files plus the per-agent SessionStart hooks. Extracting anORG_COMMANDSconstant and applying the same generator closes the symmetric debt.
Why a separate PR
- Scope: #129 ships the
hivemind skillify mine-localuser-facing feature. Wiring a Markdown generator + drift test would tangle the build pipeline with the feature work and expand the review surface significantly. - Risk surface: A
scripts/sync-md-commands.mjs+npm run buildchange touches CI and can break the release flow. Worth landing on its own branch where it's the focus. - Independence: This change has zero behavior impact on the mine-local feature — it's pure documentation upkeep.
Acceptance criteria
- All 3 SKILL.md files have the skillify command block generated from
SKILLIFY_COMMANDS -
npm run buildregenerates the blocks deterministically - Drift test fails if a SKILL.md block is edited by hand and not regenerated
- Optionally: same applied to org/auth commands via
ORG_COMMANDS
Reference
- Original observation: PR #129 review comment by @kaghni
- Lenguaje dominante
- TypeScript
- Estrellas
- 1.6k
- Forks
- 113
- Merge medio
- 20 h 28 min
- PR fusionados (30 d)
- 9
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Sin guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de activeloopai/hivemind
-
Transcript parsing aborts on a non-record JSON linePosiblemente ocupada @DivyamTalwar la tomó hace 22 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
activeloopai/hivemind#411 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 95/100
activeloopai/hivemind#330 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
activeloopai/hivemind#200 ·
Los mantenedores suelen responder en 1 día
-
Embeddings silently disabled for upgrading users (HIVEMIND_EMBEDDINGS unset → enabled=false)Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
activeloopai/hivemind#184 ·
Los mantenedores suelen responder en 1 día
-
embeddings: alternation patterns (a|b|c) skip the embedding daemon and fall back to lexical-onlyPosiblemente ocupada @eastagiletracker la tomó hace 16 días. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
activeloopai/hivemind#86 ·
Los mantenedores suelen responder en 1 día
Todos los issues de activeloopai/hivemind
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
QuantumNous/new-api#7839 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
Los mantenedores suelen responder en 1 día
-
bug p2 triaged
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
getpaseo/paseo#7071 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
test: make the #3408 Claude OAuth token fixture obviously fake so secret scanners stop flagging itAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
code-yeongyu/senpi#3436 ·
Los mantenedores suelen responder en 1 día
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
lingdojo/kana-dojo#32505 · 1 comentario · 5 reacciones ·
Los mantenedores suelen responder en 1 día