Novetats

Tots els canvis publicats: el motor, el servidor MCP, la línia d'ordres i l'app.

esfis 1.8 · espais a la finestra, lliuraments i l'origen de cada peça

Configuració té una pestanya Espais: tries quin agent veu cada espai i mires què va rebre cadascun, sense obrir el terminal. I cada peça que desa un agent porta el seu nom com a origen, perquè l'endemà un altre agent sàpiga qui ho va decidir. Com funciona.

Novetat

  • Qui veu cada espai. Per a cada espai, i per al context personal, cada IA té «Hi té accés», «No» o el que digui la regla general. És el mateix que esfis --allow i --deny.
  • Lliuraments. Els últims cinquanta recall per MCP, amb l'agent, l'espai i la pregunta. Un clic i en surt l'explicació de esfis --why.
  • L'origen és l'agent. remember desa qui l'ha cridat (Claude Code, Codex, Cursor…) encara que el client no ho digui, i recall el torna amb cada peça.

Detalls

  • esfis --why i la pestanya Prova anomenen el que un altre espai o una política va deixar fora i hauria respost la pregunta. La resta es continua comptant. Es puntua en explicar-ho: el lliurament no l'ha vist mai.
  • Copilot és una família més a les polítiques (esfis --deny copilot acme).

esfis 1.7 · activitat, espais per carpeta i Codex a Configuració

Inici té una secció Activitat: una fila per projecte, del que has tocat fa menys al que fa més temps que no toques, amb el que cal per tornar-hi. I afegir una carpeta ara també li crea l'espai, perquè el context d'un projecte no surti del projecte des del primer minut. Com funciona.

Novetat

  • Activitat, per projecte: fitxers, quan s'hi ha fet l'últim canvi, la branca de Git, els agents oberts, les peces de context i les decisions del seu espai, les sessions dels últims 30 dies i amb quins agents, les tasques pendents, l'última decisió i on ho vas deixar.
  • Una carpeta, un espai. En afegir una carpeta, i en obrir esfis per a les que ja hi eren, es crea l'espai del projecte amb aquell camí. Un espai que ja la conté, o que ja té aquell nom, no es toca.
  • Objectius i tecnologies són tipus de context, al costat de les decisions i les instruccions. L'MCP els accepta i esfis --compile els escriu al CLAUDE.md o a l'AGENTS.md.
  • Codex a Configuració › Connecta la teva IA: codex mcp add esfis -- ~/.esfis/bin/esfis --mcp, i el botó Comprova mira ~/.codex/config.toml.
  • Tasques: ⌥-clic deixa la tasca escrita al terminal sense prémer Retorn, i cada tasca recorda a quin agent la vas enviar.

Detalls

  • L'activitat es llegeix en segon pla i sense subprocessos: el HEAD de .git, .esfis/feina.md i els registres que Claude Code, Codex i Grok ja deixen al disc. No es compten carpetes com node_modules o .build.
  • A qui es va enviar una tasca va en un comentari al final de la línia de feina.md, o sigui que la llista continua sent un Markdown normal.

Tasques ajustables al costat de cada agent

La llista de feina passa a dir-se Tasques i es queda al costat de l’agent que la pot resoldre. Pots enviar-li una tasca amb un clic o marcar-la quan estigui feta, sense perdre el fil del terminal.

Detalls

  • La separació entre el terminal i Tasques conserva el color de l’agent, tant si el panell és al costat com si és a sota.
  • El divisor és el control natiu de macOS: s’arrossega de manera contínua, mostra el cursor de redimensionar i respecta una mida mínima útil per al terminal i per a la llista.
  • Les tasques continuen desant-se dins del projecte, a .esfis/feina.md, perquè les llistes que ja tenies segueixin disponibles. Els fitxers nous porten el títol Tasques.
  • El panell d’ús només actualitza els registres mentre la secció Agents és visible i esfis és al davant; treure un projecte de la llista també allibera la seva caché de tasques.

Els agents, dins d'esfis

L'Orquestrador d'agents ara és una secció d'esfis. Claude Code, Codex, Copilot, Grok i Ollama corren cadascun al seu terminal, en un mosaic que es parteix com tmux, al costat de la memòria que fan servir. Com funciona.

esfis --usage --days 14
esfis agents --help

Detalls

  • La finestra cap en una columna d'un quart de pantalla. Per sota de 760 punts, la secció, la carpeta i les sessions passen a la fila de la barra de títol i els terminals es queden tota l'amplada. ⌃⌥⌘← i ⌃⌥⌘→ l'aparquen a un cantó.
  • Canviar de secció no atura cap agent, i tancar la finestra tampoc. Sortir d'esfis sí, i abans ho pregunta.
  • Les seccions es trien amb ⌃⌘1 … ⌃⌘4; ⌘1 … ⌘9 salten als panells.
  • Els terminals van amb els colors d'esfis: paper fosc, tinta clara i el cursor d'argila.
  • La primera vegada, esfis porta la configuració de l'Orquestrador: carpetes, proveïdors, models, avisos i on tenies la finestra.
  • La configuració dels agents és una pestanya més de Configuració (⌘,).

Espais, polítiques i CLAUDE.md compilat

Cada projecte o client té ara el seu espai, i el que hi ha a dins no en surt. Tu decideixes quina IA veu quin espai, pots mirar què ha rebut cadascuna, i esfis et pot escriure el CLAUDE.md o l'AGENTS.md.

esfis --space-add acme --kind client --path ~/Clients/acme
esfis --deny chatgpt acme
esfis --why 212
esfis --compile agents --space esfis

Detalls

  • L'espai es mira abans de buscar: un record d'un altre client no arriba ni a puntuar-se, per molt que s'assembli a la pregunta. L'espai d'un assistent surt de la carpeta on treballa.
  • Les polítiques guanyen per concreció: aquesta IA en aquest espai, aquesta IA a tot arreu, tothom en aquest espai, tothom. Qui no pot veure un espai tampoc no hi pot escriure.
  • Cada recall per MCP deixa un lliurament amb el que ha entrat, el que ha quedat fora i el motiu. esfis --why l'explica, i la pestanya Prova ho ensenya triant l'assistent i l'espai.
  • --compile escriu dins d'un bloc marcat només el que és actiu, vigent, dit explícitament i permès. El context personal no hi va si no el demanes, i --import-instructions fa el camí de tornada.
  • valid_until (per MCP) o --until (des del terminal) fa que un record deixi d'arribar l'endemà de la data.
  • MEMORY.md només porta el context personal, perquè el llegeixen tots els projectes.

esfis --import puja la memòria que ja tens escrita

Els assistents ja desen fets en fitxers: un .md per fet, amb frontmatter, dins de ~/.claude/projects/<projecte>/memory/. Bons records, però tancats al projecte on es van escriure.

esfis --import                      # ~/.claude/projects
esfis --import ~/notes ~/altra/mem  # o les carpetes que diguis

Agafa tot .md que tingui description: al frontmatter i el desa; els MEMORY.md, que són índex, se salten. Un type: feedback entra com a instrucció i la resta com a fets.

Detalls

  • Cada record recorda de quin fitxer ve (source: md:<name>): tornar-hi a passar no duplica res, i un fitxer editat substitueix la versió vella en comptes d'afegir-se-li.
  • D'una instrucció se'n desa la frase del description, perquè viatja a cada recall. D'un fet, el cos sencer.
  • El vector surt sempre del description: els embeddings de frase es difuminen en un text llarg, i el cos ja pesa a la meitat lèxica.

esfis 1.0

La primera versió estable. L'app de macOS, la línia d'ordres i el servidor MCP són el mateix binari: ./build-app.sh genera Esfis.app i deixa ~/.esfis/bin/esfis, que és el que criden els assistents.

Novetat

  • Una finestra i tres pestanyes: Observa (enganxa-hi una conversa i el model en treu els records), Recorda (mira i esborra el que sap de tu) i la configuració, amb la clau d'API al clauer.
  • Ordres: --recall, --add, --list i --mcp.

Encara no

  • Sincronització entre dispositius: el magatzem no surt de la màquina.
  • Linux i Windows: els vectors surten dels models que porta macOS.