This website requires JavaScript.
Explore
Help
Register
Sign In
blomios
/
IdeA
Watch
1
Star
0
Fork
0
You've already forked IdeA
Code
Issues
Pull Requests
Actions
Packages
Projects
Releases
Wiki
Activity
Files
48420baf841faab5e42b05919d93b5a9f4dfd327
IdeA
/
crates
/
application
/
src
History
Blomios
e283f4a9e4
feat(agents,plugins): surface unifiée Capacités de l'agent — skills et tools MCP natifs + plugins
#296
(domain: PluginMcpToolMetadata dans PluginMcpServerContribution, validation hôte alignée SDK — name requis non vide, description optionnelle non vide, doublons rejetés; application: McpToolPermissionCatalogue.vue structurée additive tools {name, description, access read|writeAction} enrichie des descriptions canoniques infrastructure orchestrator mcp tools, use case SetAgentMcpToolAllowed — toggle atomique idempotente d'un tool natif dans l'allowlist explicite d'un agent, refus unknown tool sans mutation, overrides vides retirés; backend DTO: catalogue.tools additive + SetAgentMcpToolAllowedRequestDto, wire camelCase; app-tauri + web-server: commande set_agent_mcp_tool_allowed; frontend: AgentPluginCapabilities devient la surface unifiée — skills natifs assign/unassign, tools natifs via setAgentMcpToolAllowed (catalogue structuré avec fallback legacy), skills/tools plugins avec metadata statiques mcpServers[].tools et saisie manuelle fallback pour serveurs sans catalogue, tombstones indisponibles, bannière redémarrage requis si agent actif; AgentsPanel retire l'ancienne section Skills séparée au profit de la surface unifiée; ProjectPluginsPanel recentré enable/disable avec renvoi Capacités des agents; adapters Tauri/HTTP/mock + permission.test.ts; QA verte reconfirmée par Git: application mcp_tool_permissions 5/5 + plugin::tests 37/37, backend ciblés 3/3 + checks domain/application/backend, app-tauri dto 33/33 + dto_agents 30/30 + dto_plugins 2/2, check web-server, npm test 35/35 + 65/65, npm run build; suites complètes rouges classées non bloquantes par QA: web-server parallèle too many open files + 7 PTY série passant individuellement, frontend 32 échecs sur 6 fichiers web non modifiés reproduits isolément)
2026-09-09 19:52:38 +02:00
..
agent
fix(orchestrator,agent): rendezvous cross-project réarmé par jeton d'activité live model-agnostique —
#287
(le watchdog d'inactivité du rendez-vous expirait à 600s sur un tour structured actif car seul le transcript Claude servait de signe de vie; nouveau drain_with_readiness_announcements_and_activity_outcome exposant un jeton monotone AtomicU64 incrémenté par chaque ReplyEvent non terminal du tap send_with_tap, passé au watchdog via AskWatchdogActivity pour réarmer la fenêtre quelle que soit l'adapter; la sonde transcript devient fallback externe; QA verte: orchestrator_service 81/81, rendezvous 5/5, mcp_server 40/40, backend 87+7 ignored, cargo fmt --check; scripts/ hors périmètre)
2026-09-08 20:29:48 +02:00
background
fix(runtime): cancel en cascade des tasks filles — stop agent / cancel parent (
#200
, QA verte)
2026-08-12 16:02:17 +02:00
conversation
feat(domain,infra,app): rotation/rétention log.jsonl + lecture paginée (LS6)
2026-06-22 12:58:40 +02:00
embedder
feat(memory): config embedders (LOT C2) + suggestion contextuelle (LOT C3) + contexte projet partagé
2026-06-09 09:24:51 +02:00
git
feat(memory): config embedders (LOT C2) + suggestion contextuelle (LOT C3) + contexte projet partagé
2026-06-09 09:24:51 +02:00
issues
feat(tickets): ajoute les pièces jointes sur tickets (
#108
)
2026-07-29 11:08:45 +02:00
layout
feat(chat): livre la CLI custom de chat agent (
#147
) et corrige Cancel
2026-08-05 11:59:39 +02:00
memory
feat(memory): récolte automatique contrôlée de la mémoire (Lot E1)
2026-06-21 02:00:05 +02:00
orchestrator
fix(backend,orchestrator,chat): l'objectif suspendu guide le premier tour post-restart —
#290
regression partielle (register_suspended_turn capture la demande utilisateur exacte au point d'entrée chat agent_send/chat.send avec source diagnostique, RestartRendezvousCoordinator conserve tour/objectif/restart_attempt_id, take_continuation consommable exactement une fois et seulement par la tentative courante: suspended_restart_continuation_prompt place l'objectif utilisateur avant toute consigne generique et StructuredHumanTurnTransition::Resume porte le prompt host-provided injecte au runtime de remplacement; nettoyage du tour suspendu sur succes, echec, annulation et abandon/expiration; diagnostics projet/agent/turn_id/restart_attempt_id/source; rendez-vous inter-agents
#289
inchanges; QA verte reconfirmee par Git: cargo check --workspace, backend self_restart_contract_tests 3/3, orchestrator_service restart 10/10, workstate_actions 9/9, app-tauri chat_bridge 31/31, web-server websocket_chat_send 3/3, fmt --check, diff --check; restants: rebuild AppImage + validation live reprise objectif apres restart; carnet
#290
iteration regression + passage store qa inclus; scripts/ hors périmètre; aucun push)
2026-09-09 09:17:36 +02:00
plugin
feat(agents,plugins): surface unifiée Capacités de l'agent — skills et tools MCP natifs + plugins
#296
(domain: PluginMcpToolMetadata dans PluginMcpServerContribution, validation hôte alignée SDK — name requis non vide, description optionnelle non vide, doublons rejetés; application: McpToolPermissionCatalogue.vue structurée additive tools {name, description, access read|writeAction} enrichie des descriptions canoniques infrastructure orchestrator mcp tools, use case SetAgentMcpToolAllowed — toggle atomique idempotente d'un tool natif dans l'allowlist explicite d'un agent, refus unknown tool sans mutation, overrides vides retirés; backend DTO: catalogue.tools additive + SetAgentMcpToolAllowedRequestDto, wire camelCase; app-tauri + web-server: commande set_agent_mcp_tool_allowed; frontend: AgentPluginCapabilities devient la surface unifiée — skills natifs assign/unassign, tools natifs via setAgentMcpToolAllowed (catalogue structuré avec fallback legacy), skills/tools plugins avec metadata statiques mcpServers[].tools et saisie manuelle fallback pour serveurs sans catalogue, tombstones indisponibles, bannière redémarrage requis si agent actif; AgentsPanel retire l'ancienne section Skills séparée au profit de la surface unifiée; ProjectPluginsPanel recentré enable/disable avec renvoi Capacités des agents; adapters Tauri/HTTP/mock + permission.test.ts; QA verte reconfirmée par Git: application mcp_tool_permissions 5/5 + plugin::tests 37/37, backend ciblés 3/3 + checks domain/application/backend, app-tauri dto 33/33 + dto_agents 30/30 + dto_plugins 2/2, check web-server, npm test 35/35 + 65/65, npm run build; suites complètes rouges classées non bloquantes par QA: web-server parallèle too many open files + 7 PTY série passant individuellement, frontend 32 échecs sur 6 fichiers web non modifiés reproduits isolément)
2026-09-09 19:52:38 +02:00
project
feat(web): panneau Fichiers — navigation projet + téléchargements fichier/dossier ZIP —
#211
2026-08-15 10:38:53 +02:00
remote
feat: add main features
2026-06-06 01:27:01 +02:00
skill
feat(plugins): paramètres projet plugins + attribution skills/tools aux agents —
#282
(manifeste accepte contributes.skills IdeA-native multi-harness; store .ideai/project-plugins.json v1: enable plugin par projet + assignments skills/tools par agent; refs + use cases settings/assign/unassign; resolver skills pour idea_skill_read et injection catalogue lancement agent; permissions MCP dynamiques projetées par harness Claude Code/Codex/OpenCode; tombstones uninstall, hot reload recalcule catalogue et marque assignments cassés; frontend: Settings projet Plugins, détail capabilities, attribution agent, catalogue permissions; bump pointeur IdeaSDK 6eb8db3; QA verte: cargo test -p application, project_plugin_settings 3/3, dto_plugins 2/2, structured_launch_d3 26/26, catalogue mcp 7/7, frontend 5 tests ProjectPluginSettings/plugin, npm build frontend)
2026-09-08 15:48:57 +02:00
sprints
feat(sprints): modèle de sprints — domaine, use-cases, persistance et surfaces (backend)
2026-07-05 10:57:33 +02:00
template
feat(agents): role orchestrateur du contexte global expose et configurable par agent — isOrchestrator distinct des permissions MCP, DTO update_project_orchestrator (terminologie wire legacy conservee), refus idea_context_update explicite avec writer effectif + orientation idea_context_propose, surface AgentsPanel + adaptateurs frontend —
#276
(QA verte: cargo fmt/check, tests cibles application/app-tauri/infrastructure/backend, npm typecheck, 69/69 tests frontend agents/adapters)
2026-09-07 22:49:12 +02:00
terminal
feat(infra): temp IdeA launch-scoped alloué par lancement d'agent, injecté via TMPDIR/TMP/TEMP, writable_roots + release au stop, fail-closed —
#200
(QA verte)
2026-08-14 23:55:54 +02:00
window
feat(window): support des fenêtres plugin-hébergées (backend)
2026-08-04 00:39:42 +02:00
workstate
fix(backend,orchestrator,chat): tour humain agent_send survit au self-restart —
#290
(le tour humain direct agent_send/ws chat.send s'enregistre au RestartRendezvousCoordinator via StructuredHumanTurnGuard: Final/Error de l'ancien provider devient transition de contrôle et non le Final logique; transition_after_provider_terminal_async attend Ready puis accept_ready acquitte le handoff et libère le scheduler, Resume => drain de la session de remplacement avec SELF_RESTART_CONTINUATION_PROMPT, seul le terminal du remplacement est transmis au chat; Failed/Cancelled surfacés explicitement avec libération Busy/FIFO; send_with_tap en erreur pendant restart actif traité comme teardown attendu (stream vide puis attente du remplacement, plus de Final prématuré ni chat bloqué); StopLiveAgent câblé with_restart_rendezvous: stop utilisateur annule le rendez-vous restart; RestartRendezvousRegistration rendu public (state/changed/accept_ready); QA verte: backend self_restart_contract_tests 3/3 dont 2 nouveaux (old terminal ignoré + handoff accepté, failure explicite + busy libéré), application orchestrator_service restart 8/8 dont registration directe du rendez-vous, workstate_actions 9/9, app-tauri chat_bridge 31/31, web-server websocket_chat_send 3/3, cargo check --workspace, fmt --check, diff --check — reconfirmés par Git avant commit; réserves hors périmètre préexistantes: 7 échecs fixture PTY web-server + 2 échecs plugin application; carnet
#290
+ clôture store
#289
inclus; scripts/ hors périmètre; aucun push)
2026-09-09 08:38:29 +02:00
chat_attachments.rs
feat(chat): colle les fichiers du presse-papiers via Ctrl+V dans le composer (
#181
)
2026-08-11 15:57:30 +02:00
chat_drafts.rs
feat(chat): persistance bornee du brouillon custom chat par projet/layout (
#182
)
2026-08-11 16:24:20 +02:00
codex_permissions.rs
fix(sandbox): writable roots Codex dérivées des permissions effectives du menu agent —
#197
(QA verte)
2026-08-14 15:05:15 +02:00
device.rs
chore(fmt): reformatage cargo fmt résiduel
2026-07-18 23:15:39 +02:00
diag.rs
feat(orchestrator): modèle de désignation d'orchestrateur + sink de diagnostic
2026-06-20 08:56:39 +02:00
error.rs
feat(infra): tmp partagé inter-projets géré par IdeA (handles opaques, leases, GC, projection sandbox) —
#189
(QA verte)
2026-08-13 13:34:33 +02:00
health.rs
feat(memory): config embedders (LOT C2) + suggestion contextuelle (LOT C3) + contexte projet partagé
2026-06-09 09:24:51 +02:00
lib.rs
feat(agents,plugins): surface unifiée Capacités de l'agent — skills et tools MCP natifs + plugins
#296
(domain: PluginMcpToolMetadata dans PluginMcpServerContribution, validation hôte alignée SDK — name requis non vide, description optionnelle non vide, doublons rejetés; application: McpToolPermissionCatalogue.vue structurée additive tools {name, description, access read|writeAction} enrichie des descriptions canoniques infrastructure orchestrator mcp tools, use case SetAgentMcpToolAllowed — toggle atomique idempotente d'un tool natif dans l'allowlist explicite d'un agent, refus unknown tool sans mutation, overrides vides retirés; backend DTO: catalogue.tools additive + SetAgentMcpToolAllowedRequestDto, wire camelCase; app-tauri + web-server: commande set_agent_mcp_tool_allowed; frontend: AgentPluginCapabilities devient la surface unifiée — skills natifs assign/unassign, tools natifs via setAgentMcpToolAllowed (catalogue structuré avec fallback legacy), skills/tools plugins avec metadata statiques mcpServers[].tools et saisie manuelle fallback pour serveurs sans catalogue, tombstones indisponibles, bannière redémarrage requis si agent actif; AgentsPanel retire l'ancienne section Skills séparée au profit de la surface unifiée; ProjectPluginsPanel recentré enable/disable avec renvoi Capacités des agents; adapters Tauri/HTTP/mock + permission.test.ts; QA verte reconfirmée par Git: application mcp_tool_permissions 5/5 + plugin::tests 37/37, backend ciblés 3/3 + checks domain/application/backend, app-tauri dto 33/33 + dto_agents 30/30 + dto_plugins 2/2, check web-server, npm test 35/35 + 65/65, npm run build; suites complètes rouges classées non bloquantes par QA: web-server parallèle too many open files + 7 PTY série passant individuellement, frontend 32 échecs sur 6 fichiers web non modifiés reproduits isolément)
2026-09-09 19:52:38 +02:00
managed_temp.rs
feat(infra): temp IdeA généralisé à tous les agents + purge du store managed-tmp au shutdown d'IdeA —
#200
(QA verte)
2026-08-15 00:14:25 +02:00
mcp_tool_permissions.rs
feat(agents,plugins): surface unifiée Capacités de l'agent — skills et tools MCP natifs + plugins
#296
(domain: PluginMcpToolMetadata dans PluginMcpServerContribution, validation hôte alignée SDK — name requis non vide, description optionnelle non vide, doublons rejetés; application: McpToolPermissionCatalogue.vue structurée additive tools {name, description, access read|writeAction} enrichie des descriptions canoniques infrastructure orchestrator mcp tools, use case SetAgentMcpToolAllowed — toggle atomique idempotente d'un tool natif dans l'allowlist explicite d'un agent, refus unknown tool sans mutation, overrides vides retirés; backend DTO: catalogue.tools additive + SetAgentMcpToolAllowedRequestDto, wire camelCase; app-tauri + web-server: commande set_agent_mcp_tool_allowed; frontend: AgentPluginCapabilities devient la surface unifiée — skills natifs assign/unassign, tools natifs via setAgentMcpToolAllowed (catalogue structuré avec fallback legacy), skills/tools plugins avec metadata statiques mcpServers[].tools et saisie manuelle fallback pour serveurs sans catalogue, tombstones indisponibles, bannière redémarrage requis si agent actif; AgentsPanel retire l'ancienne section Skills séparée au profit de la surface unifiée; ProjectPluginsPanel recentré enable/disable avec renvoi Capacités des agents; adapters Tauri/HTTP/mock + permission.test.ts; QA verte reconfirmée par Git: application mcp_tool_permissions 5/5 + plugin::tests 37/37, backend ciblés 3/3 + checks domain/application/backend, app-tauri dto 33/33 + dto_agents 30/30 + dto_plugins 2/2, check web-server, npm test 35/35 + 65/65, npm run build; suites complètes rouges classées non bloquantes par QA: web-server parallèle too many open files + 7 PTY série passant individuellement, frontend 32 échecs sur 6 fichiers web non modifiés reproduits isolément)
2026-09-09 19:52:38 +02:00
model_server.rs
fix(
#100
#101
): corrige plugin_review_package et opencode_model_server_block
2026-07-28 20:02:30 +02:00
permission.rs
feat(wave): #119/#122/#131/#132 verts + sprint plugins ESM/persistance #135/#136/#139
2026-08-03 11:06:23 +02:00
project_plugin.rs
feat(plugins): paramètres projet plugins + attribution skills/tools aux agents —
#282
(manifeste accepte contributes.skills IdeA-native multi-harness; store .ideai/project-plugins.json v1: enable plugin par projet + assignments skills/tools par agent; refs + use cases settings/assign/unassign; resolver skills pour idea_skill_read et injection catalogue lancement agent; permissions MCP dynamiques projetées par harness Claude Code/Codex/OpenCode; tombstones uninstall, hot reload recalcule catalogue et marque assignments cassés; frontend: Settings projet Plugins, détail capabilities, attribution agent, catalogue permissions; bump pointeur IdeaSDK 6eb8db3; QA verte: cargo test -p application, project_plugin_settings 3/3, dto_plugins 2/2, structured_launch_d3 26/26, catalogue mcp 7/7, frontend 5 tests ProjectPluginSettings/plugin, npm build frontend)
2026-09-08 15:48:57 +02:00
slash_command.rs
feat(plugins,host): pluginRoot officiel transmis au contexte activate(ctx) des plugins —
#285
(domain ports + infrastructure plugin: racine du package installé résolue depuis la même source de vérité que la substitution manifest ${pluginRoot}; application runtime_catalog + slash_command; backend dto + app-tauri dto_plugins; frontend domain + plugins runtime loader transmettent pluginRoot au contexte activé; bump pointeur IdeaSDK e3a0f46 via feature/285-plugin-root-runtime-api; QA verte: cargo check domain/application/infrastructure/backend/app-tauri, runtime_catalog 5/5, plugin_install_load 5/5, dto_plugins 2/2, frontend typecheck + 33 tests/3 fichiers, cargo fmt --check, git diff --check; réserves: rebuild AppImage + validation live ctx.pluginRoot dans le binaire actif restants)
2026-09-08 18:35:34 +02:00
system_permissions.rs
feat(permissions): expose network permission state (
#103
)
2026-07-25 23:06:50 +02:00
ticket_assistant.rs
fix(sandbox): writable roots Codex dérivées des permissions effectives du menu agent —
#197
(QA verte)
2026-08-14 15:05:15 +02:00