Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
Memoria personal para Claude Code en notas Markdown; no carga el contexto a ciegas.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
KB_MEMORY_ROOT, KB_ENABLE_ANNOTATIONS, KB_TOOLSต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"bovedia": {
"command": "npx",
"args": [
"-y",
"bovedia"
],
"env": {
"KB_MEMORY_ROOT": "ใส่ค่าของคุณ",
"KB_ENABLE_ANNOTATIONS": "ใส่ค่าของคุณ",
"KB_TOOLS": "ใส่ค่าของคุณ"
}
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add bovedia --env KB_MEMORY_ROOT='ใส่ค่าของคุณ' --env KB_ENABLE_ANNOTATIONS='ใส่ค่าของคุณ' --env KB_TOOLS='ใส่ค่าของคุณ' -- npx -y bovediaเติมค่าที่เว้นว่างไว้ก่อนรัน
วางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"bovedia": {
"command": "npx",
"args": [
"-y",
"bovedia"
],
"env": {
"KB_MEMORY_ROOT": "ใส่ค่าของคุณ",
"KB_ENABLE_ANNOTATIONS": "ใส่ค่าของคุณ",
"KB_TOOLS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"bovedia": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"bovedia"
],
"env": {
"KB_MEMORY_ROOT": "ใส่ค่าของคุณ",
"KB_ENABLE_ANNOTATIONS": "ใส่ค่าของคุณ",
"KB_TOOLS": "ใส่ค่าของคุณ"
}
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
KB_MEMORY_ROOT envKB_ENABLE_ANNOTATIONS envKB_TOOLS envค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub jmpdsevilla ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (2.7.0) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, SuperCollider
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Make sound with SuperCollider: synths, drums, chords, melodies and soundscapes over OSC.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Memoria personal para Claude Code: tus notas en Markdown, tuyas y para siempre.
Estado del proyecto (28 de agosto de 2026). BovedIA se sigue desarrollando a diario, pero en un repositorio privado: el trabajo del día a día se hace sobre una instalación real y sus pruebas contienen datos de clientes y agenda personal, así que publicarlo tal cual no es una opción responsable.
Lo que hay aquí es una versión estable, completa y probada (v2.8.1, 89 pruebas): funciona, se mantiene instalable y su licencia MIT no cambia. No está abandonada — está congelada a propósito.
Cuando haya material que pueda salir limpio (el módulo de agenda para Apple, la memoria por activación, la búsqueda semántica local), se publicará aquí. Sin fecha comprometida.
BovedIA (bóveda + IA) es un servidor MCP que le da a Claude Code —y a cualquier cliente MCP— memoria persistente. Tus notas viven en archivos Markdown planos, en tu disco, sincronizados en la nube si quieres. La IA puede leerlas, crearlas, buscarlas y organizarlas durante cualquier sesión de trabajo.
Pero BovedIA no es solo el motor. Es también una forma de organizar la memoria para que la IA llegue a cada conversación ligera y enfocada, en vez de arrastrar todo el contexto de golpe. Esa forma va incluida en el vault-example/ de este repositorio, lista para adaptar.
Casi todos los sistemas de memoria vuelcan todo el contexto en cada sesión. BovedIA parte de lo contrario: traer solo lo que el caso pide, en el momento en que lo pide. Cargar de más no es solo trabajo desperdiciado — condiciona y ensucia la respuesta.
Para lograrlo, la bóveda se recorre por niveles (la pirámide):
Y una capa aparte, el alma: la carpeta donde se vuelca lo que uno piensa y siente — el porqué de fondo, la mentalidad, la manera de mirar el trabajo. No es documentación: es lo que hace que la memoria deje de ser un archivador y empiece a ser continuidad.
index.js), una sola dependencia..md en tu disco — sin bases de datos, sin APIs externas.El vault-example/ trae una estructura de referencia lista para usar. No es una jaula: crea las categorías que tu trabajo pida. Pero enseña el método completo.
| Carpeta / archivo | Para qué sirve |
|---|---|
Inicio.md | El router. Primera nota que se lee en cada sesión: decide qué cargar y cuándo. No carga a ciegas. |
HOME.md | El mapa. Qué carpeta es qué y dónde va cada cosa. |
una-tarea-pendiente.md | Ejemplo de pendiente sin fecha, en la raíz, marcado con #pendiente. |
programado/ | Notas con fecha de activación (> APARECER: AAAA-MM-DD). El router avisa cuando llega el día. |
sistema/ | Cómo funciona todo: la pirámide (regla madre), las portadas de rama y los protocolos de sesión. |
alma/ | Filosofía y mentalidad; dónde se vuelca lo que uno piensa y siente. Fondo, no operativa. |
proyectos/ | Tus proyectos propios. |
clientes/ | Una subcarpeta por cliente, con su perfil y contexto. |
conocimiento/ | Saber de oficio reutilizable, incluidos los problemas-resueltos/. |
referencias/ | Guías, técnicas y recursos que se consultan pero no cambian a menudo. |
No necesitas clonar nada. Añade esto a la configuración MCP de tu cliente (Claude Code, Claude Desktop…) y copia el vault-example/ a tu carpeta como punto de partida:
{
"mcpServers": { "bovedia": { "command": "npx", "args": ["-y", "bovedia"], "env": { "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/boveda" } } } }
El resto de esta sección es la instalación manual (clonando el repo), útil si quieres modificar el código.
npm install -g @anthropic-ai/claude-code)git clone https://github.com/jmpdsevilla/BovedIA.git
cd BovedIA/server npm install
Copia la bóveda de ejemplo a tu carpeta sincronizada y personaliza HOME.md e Inicio.md:
# Mac + iCloud
cp -r vault-example ~/Library/Mobile\ Documents/com~apple~CloudDocs/mi-boveda
xcopy /E /I vault-example "%USERPROFILE%\OneDrive\mi-boveda"
cp -r vault-example ~/Dropbox/mi-boveda
Apunta el servidor a tu bóveda con la variable KB_MEMORY_ROOT (acepta rutas con ~):
{
"mcpServers": { "bovedia": { "command": "node", "args": ["/ruta/absoluta/a/BovedIA/server/index.js"], "env": { "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/mi-boveda" } } } }
Si no defines KB_MEMORY_ROOT (ni su alias MEMORY_PATH), BovedIA usa ~/Documents/bovedia por defecto.
Reinicia Claude Code y pide leer Inicio, o ejecutar get_index. Deberías ver tu bóveda.
BovedIA soporta opcionalmente Markdown Annotations, una spec abierta originalmente de iA Writer que registra qué autor escribió qué parte de cada nota. Cuando se activa, las notas escritas por la IA llevan al final un bloque que atribuye el cuerpo a &Claude; cuando un humano edita la nota en un editor compatible, sus rangos quedan marcados como @nombre, y la siguiente vez que BovedIA toque la nota preserva esa autoría en vez de sobrescribirla.
Está desactivado por defecto. Para activarlo, añade KB_ENABLE_ANNOTATIONS=1 al entorno del servidor:
{
"mcpServers": { "bovedia": { "command": "node", "args": ["/ruta/absoluta/a/BovedIA/server/index.js"], "env": { "KB_MEMORY_ROOT": "/ruta/absoluta/a/tu/mi-boveda", "KB_ENABLE_ANNOTATIONS": "1" } } } }
Con la opción activa se desbloquean dos herramientas: read_authorship (resumen de quién escribió qué) y migrate_annotations (añade el bloque a todas las notas existentes; ejecútala con dry_run: true primero). La firma se puede personalizar con KB_AUTHOR_NAME y KB_AUTHOR_EMAIL.
Solo actívalo si usas un editor compatible con la spec: los que no la soportan mostrarán el bloque como texto plano al final del archivo.
38 en total. Las 36 primeras funcionan siempre. Las 2 de autoría (read_authorship, migrate_annotations) solo se exponen si arrancas el servidor con KB_ENABLE_ANNOTATIONS=1.
El listado de herramientas viaja en cada sesión y ocupa contexto. Si tu cliente tiene poca ventana, arranca con KB_TOOLS=core y se expondrán solo las 15 de uso diario (la mitad de tokens). Por defecto se exponen todas.
| Herramienta | Qué hace |
|---|---|
write_note | Crear o actualizar una nota (upsert completo) |
read_note | Leer una nota (busca en todas las categorías) |
search_notes | Buscar por texto libre (lógica AND, sin distinguir acentos) |
list_notes | Listar notas, filtradas por categoría o etiqueta |
get_index | Mapa de categorías (full: true para el detalle) |
delete_note | Eliminar una nota (avisa de backlinks) |
create_category | Crear una carpeta |
move_note | Mover/renombrar una nota (actualiza wikilinks) |
delete_category | Eliminar una carpeta vacía |
| Herramienta | Qué hace |
|---|---|
edit_note | Buscar/reemplazar dentro de una nota |
append_to_note | Añadir contenido al final |
prepend_to_note | Insertar contenido al principio |
update_section | Reemplazar una sección por su encabezado |
insert_after_section | Insertar una sección nueva tras otra |
| Herramienta | Qué hace |
|---|---|
list_broken_links | Todos los wikilinks rotos de la bóveda |
find_backlinks | Backlinks de una nota (sin cargar su contenido) |
find_orphans | Notas sin backlinks ni enlaces salientes |
rename_wikilink | Sustituir [[viejo]] por [[nuevo]] en toda la bóveda |
list_tags | Todos los hashtags #snake_case con su recuento |
update_frontmatter | Actualizar campos YAML sin tocar el cuerpo |
| Herramienta | Qué hace |
|---|---|
peek_note | Frontmatter + primer párrafo |
read_section | Solo una sección |
list_sections | Índice de encabezados de una nota, sin su contenido |
read_frontmatter | Solo el YAML |
| Herramienta | Qué hace |
|---|---|
recently_updated | Notas modificadas en los últimos N días |
move_category | Renombrar una carpeta (actualiza el frontmatter de cada nota) |
validate_note | Revisar frontmatter, hashtags, "Ver también" y enlaces rotos |
bulk_move | Mover varias notas a la misma categoría |
due_notes | La lista de notas programadas que ya toca sacar hoy, avisando de las que parecen ya hechas o duplicadas. Solo la lista: el contenido se lee al elegir una tarea |
audit_tags | Salud de las etiquetas (y corrección de las mal formadas) |
prune_tags | Fusionar variantes y recortar las notas con etiquetas de más |
vault_health | Parte de salud de la bóveda en una sola llamada |
create_snapshot | Copia de seguridad completa, a demanda |
list_snapshots | Ver las copias disponibles |
restore_snapshot | Volver a una copia anterior (simula por defecto) |
migrate_yaml_tags | Bajar al cuerpo las etiquetas que quedan en el frontmatter YAML |
KB_ENABLE_ANNOTATIONS=1)| Herramienta | Qué hace |
|---|---|
read_authorship | Resumen de qué autor escribió qué rangos |
migrate_annotations | Añadir el bloque de autoría a las notas existentes |
Referencia completa en docs/tools-reference.md.
Añade esta instrucción a tu CLAUDE.md o a la configuración del asistente para sacarle todo el partido:
Al empezar cada sesión: leer Inicio (el router). Revisar la carpeta programado/
y avisar de lo que ya toca. No cargar nada más "por si acaso". Guardar lo que merezca recordarse: credenciales, soluciones, decisiones, comandos. Enlazar las notas con wikilinks [[slug]]. Cada nota termina con una sección "Ver también" con 2-5 wikilinks.
Las notas se enlazan entre sí con el formato [[slug]]:
## Ver también
Reglas:
.md).[[referencias/x]]~~ → [[x]].[[x|otro texto]]~~ → [[x]].Cuando una nota se renombra, sus wikilinks se actualizan automáticamente.
ตัดมาแค่ช่วงต้น อ่านต่อใน repo