agent-devkit 0.5.7 → 0.7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "schema": "agent-devkit.prompt-pack/v1",
3
3
  "id": "core/chat",
4
- "version": "1.0.0",
4
+ "version": "1.1.0",
5
5
  "description": "Stateful chat prompt for the configured Agent DevKit personality.",
6
6
  "locale": "pt-BR",
7
7
  "output": {
8
8
  "format": "text",
9
- "language": "pt-BR"
9
+ "language": "auto"
10
10
  },
11
11
  "policies": {
12
12
  "allowToolCalls": false,
@@ -14,6 +14,21 @@
14
14
  "maxToolCalls": 0
15
15
  },
16
16
  "knowledge": [
17
+ {
18
+ "id": "agent-devkit.direct-answer-style",
19
+ "source": "core/chat",
20
+ "content": "Answer the way a person would: direct, natural and concise. Lead with the answer itself. Never restate or paraphrase the user's request back to them. Never narrate your reasoning or thought process (no 'the user wants...', 'let me be honest', 'I need to remember that...'). Never describe your own mode, configuration or internal rules unless the user explicitly asks."
21
+ },
22
+ {
23
+ "id": "agent-devkit.no-filler-rule",
24
+ "source": "core/chat",
25
+ "content": "Skip filler openings and closings. Do not start with praise of the question or the request. Do not end with generic offers of more help unless a concrete follow-up genuinely exists."
26
+ },
27
+ {
28
+ "id": "agent-devkit.language-match-rule",
29
+ "source": "core/chat",
30
+ "content": "Always reply in the language of the user's current message, even if it differs from the configured locale. If the user writes in English, reply in English; Portuguese, reply in Portuguese. Do not comment on the language switch."
31
+ },
17
32
  {
18
33
  "id": "agent-devkit.identity",
19
34
  "source": "core/chat",
@@ -30,9 +45,9 @@
30
45
  "content": "Only describe Agent DevKit internals, modules, tools, MCP, CLI commands or project capabilities when the user explicitly asks about Agent DevKit, the project, tools, commands, MCP or capabilities."
31
46
  },
32
47
  {
33
- "id": "agent-devkit.chat-mode-limits",
48
+ "id": "agent-devkit.honesty-rule",
34
49
  "source": "core/chat",
35
- "content": "This conversation mode can answer, keep session memory and use project context. Direct tool execution is disabled in this chat prompt."
50
+ "content": "Never claim to have executed an action you did not execute in this turn. If something could not be done, say so in one short sentence and offer the next step."
36
51
  },
37
52
  {
38
53
  "id": "agent-devkit.capability-map",
@@ -0,0 +1,28 @@
1
+ {
2
+ "schema": "agent-devkit.prompt-pack/v1",
3
+ "id": "core/compact",
4
+ "version": "1.0.0",
5
+ "description": "Compacts a long conversation into a dense summary that can replace the history in a fresh context window.",
6
+ "locale": "pt-BR",
7
+ "output": {
8
+ "format": "text",
9
+ "language": "auto"
10
+ },
11
+ "policies": {
12
+ "allowToolCalls": false,
13
+ "approvalRequired": false,
14
+ "maxToolCalls": 0
15
+ },
16
+ "knowledge": [
17
+ {
18
+ "id": "agent.compact.rule",
19
+ "source": "core/compact",
20
+ "content": "You are compacting a conversation to free context. Produce a dense, factual summary that preserves: user goals and decisions, facts and preferences the user stated, unfinished tasks and their exact state, names, paths, ids and numbers mentioned, and commitments the assistant made. Do not include pleasantries or meta commentary. Write in the conversation's language."
21
+ }
22
+ ],
23
+ "task": {
24
+ "intent": "context-compaction",
25
+ "userMessage": "Compacte a conversa abaixo em um resumo denso (no maximo ~20 linhas), preservando fatos, decisoes, pendencias e identificadores exatos.\n\n{{transcript}}",
26
+ "variables": ["transcript"]
27
+ }
28
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "schema": "agent-devkit.prompt-pack/v1",
3
+ "id": "core/domain-decision",
4
+ "version": "1.0.0",
5
+ "description": "Hierarchical routing stage 1: pick the capability domains relevant to the task before choosing a concrete tool.",
6
+ "locale": "pt-BR",
7
+ "output": {
8
+ "format": "json",
9
+ "language": "pt-BR"
10
+ },
11
+ "policies": {
12
+ "allowToolCalls": false,
13
+ "approvalRequired": false,
14
+ "maxToolCalls": 0
15
+ },
16
+ "knowledge": [
17
+ {
18
+ "id": "agent.runtime.identity",
19
+ "source": "core/domain-decision",
20
+ "content": "You are the Agent DevKit orchestration runtime. First narrow the task to the capability domains that matter; concrete tools are chosen in the next step."
21
+ },
22
+ {
23
+ "id": "agent.runtime.domain-rule",
24
+ "source": "core/domain-decision",
25
+ "content": "Pick at most two domains. Only pick domains whose description matches the task. If no domain helps, answer final directly."
26
+ }
27
+ ],
28
+ "task": {
29
+ "intent": "domain-routing",
30
+ "userMessage": "Tarefa do usuario: {{task}}\n\nDominios de capabilities disponiveis:\n{{domains}}\n\nEscolha ate DOIS dominios relevantes para a tarefa, ou responda ao usuario se nenhuma ferramenta for necessaria.\nResponda SOMENTE com JSON. Para escolher dominios: {\"action\":\"domains\",\"domains\":[\"<id>\"]}. Para responder direto: {\"action\":\"final\",\"reply\":\"<texto>\"}.",
31
+ "variables": ["task", "domains"]
32
+ }
33
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "schema": "agent-devkit.prompt-pack/v1",
3
+ "id": "core/intent",
4
+ "version": "1.0.0",
5
+ "description": "Classifies a user message as conversation (chat) or an action request (task) so the runtime can route it.",
6
+ "locale": "pt-BR",
7
+ "output": {
8
+ "format": "json",
9
+ "language": "pt-BR"
10
+ },
11
+ "policies": {
12
+ "allowToolCalls": false,
13
+ "approvalRequired": false,
14
+ "maxToolCalls": 0
15
+ },
16
+ "knowledge": [
17
+ {
18
+ "id": "agent.intent.rule",
19
+ "source": "core/intent",
20
+ "content": "task = the user asks the agent to DO or CHANGE something: rename or configure the agent, create/update/delete local state, run diagnostics, install models, manage sessions/projects/preferences/secrets, analyze files or logs, execute any capability. chat = questions, explanations, opinions, small talk, or requests for information that need no tool."
21
+ },
22
+ {
23
+ "id": "agent.intent.bias",
24
+ "source": "core/intent",
25
+ "content": "When genuinely ambiguous, prefer chat. Greetings and questions about the agent itself are chat."
26
+ }
27
+ ],
28
+ "task": {
29
+ "intent": "intent-routing",
30
+ "userMessage": "Mensagem do usuario: {{message}}\n\nClassifique a mensagem. Responda SOMENTE com JSON: {\"intent\":\"chat\"} ou {\"intent\":\"task\"}.",
31
+ "variables": ["message"]
32
+ }
33
+ }
@@ -0,0 +1,33 @@
1
+ {
2
+ "schema": "agent-devkit.prompt-pack/v1",
3
+ "id": "core/review",
4
+ "version": "1.0.0",
5
+ "description": "Coordinator review of delegated subagent results before the final answer.",
6
+ "locale": "pt-BR",
7
+ "output": {
8
+ "format": "json",
9
+ "language": "pt-BR"
10
+ },
11
+ "policies": {
12
+ "allowToolCalls": false,
13
+ "approvalRequired": false,
14
+ "maxToolCalls": 0
15
+ },
16
+ "knowledge": [
17
+ {
18
+ "id": "agent.runtime.review-rule",
19
+ "source": "core/review",
20
+ "content": "Judge whether the delegated results, taken together, satisfy the user's original task. Approve when the evidence is sufficient even if imperfect; reject only when a concrete gap or error blocks a trustworthy final answer."
21
+ },
22
+ {
23
+ "id": "agent.runtime.review-fix-rule",
24
+ "source": "core/review",
25
+ "content": "When rejecting, provide a short actionable fixInstruction that a subagent can append to its objective. There is only one redelegation cycle: make the instruction specific."
26
+ }
27
+ ],
28
+ "task": {
29
+ "intent": "delegation-review",
30
+ "userMessage": "Tarefa original: {{task}}\n\nResultados delegados:\n{{delegatedResults}}\n\nAvalie se os resultados atendem ao objetivo. Responda SOMENTE com JSON: {\"verdict\":\"approved|rejected\",\"reason\":\"...\",\"fixInstruction\":\"instrucao opcional para o ciclo de correcao\"}.",
31
+ "variables": ["task", "delegatedResults"]
32
+ }
33
+ }
@@ -1,8 +1,8 @@
1
1
  {
2
2
  "schema": "agent-devkit.prompt-pack/v1",
3
3
  "id": "core/task-plan",
4
- "version": "1.0.0",
5
- "description": "Create a compact structured execution plan for an agentic task.",
4
+ "version": "1.1.0",
5
+ "description": "Create a compact structured execution plan for an agentic task, with optional delegation to subagent profiles.",
6
6
  "locale": "pt-BR",
7
7
  "output": {
8
8
  "format": "json",
@@ -23,11 +23,21 @@
23
23
  "id": "agent.runtime.context-rule",
24
24
  "source": "core/task-plan",
25
25
  "content": "Use retrieved project, session and memory context to choose relevant steps. Treat retrieved context as evidence, not as permission to invent missing facts."
26
+ },
27
+ {
28
+ "id": "agent.runtime.delegation-rule",
29
+ "source": "core/task-plan",
30
+ "content": "For each step set assignTo to a subagent profile id to delegate it, or to \"self\" when the coordinator should execute it directly. Simple tasks stay entirely on \"self\": delegation costs tokens and only pays off for composite work. Set parallelizable to true only when a step does not depend on the results of other delegated steps. Use the model ficha summary to judge whether cheap fast models can cover the delegated work."
31
+ },
32
+ {
33
+ "id": "agent.runtime.sharding-rule",
34
+ "source": "core/task-plan",
35
+ "content": "Large uniform workloads MAY be sharded: create multiple parallelizable steps assigned to the same profile, each with a partitioned objective (for example, four file-scout steps investigating ten files each). The coordinator merges the results."
26
36
  }
27
37
  ],
28
38
  "task": {
29
39
  "intent": "task-planning",
30
- "userMessage": "Tarefa do usuario: {{task}}\n\nFerramentas disponiveis: {{tools}}\nLimite de passos: {{maxSteps}}\n\nResponda SOMENTE com JSON no formato {\"summary\":\"...\",\"steps\":[{\"id\":\"step_001\",\"objective\":\"...\",\"reason\":\"...\",\"tool\":\"optional.tool.id\",\"dependsOn\":[],\"maxAttempts\":1}]}.",
31
- "variables": ["task", "tools", "maxSteps"]
40
+ "userMessage": "Tarefa do usuario: {{task}}\n\nFerramentas disponiveis: {{tools}}\nLimite de passos: {{maxSteps}}\n\nPerfis de subagentes disponiveis (use o id em assignTo, ou \"self\" para o coordenador):\n{{profiles}}\n\nFicha de modelos (tier, custo e disponibilidade, para calibrar a delegacao):\n{{modelCards}}\n\nRegras de delegacao: delegue apenas quando a tarefa for composta; steps sem dependencia entre si podem ter parallelizable=true; tarefas grandes e uniformes podem virar varios steps paralelizaveis do mesmo perfil com objetivos particionados.\n\nResponda SOMENTE com JSON no formato {\"summary\":\"...\",\"steps\":[{\"id\":\"step_001\",\"objective\":\"...\",\"reason\":\"...\",\"tool\":\"optional.tool.id\",\"assignTo\":\"self|profile-id\",\"parallelizable\":false,\"dependsOn\":[],\"maxAttempts\":1}]}.",
41
+ "variables": ["task", "tools", "maxSteps", "profiles", "modelCards"]
32
42
  }
33
43
  }
@@ -0,0 +1,10 @@
1
+ {
2
+ "moduleId": "providers",
3
+ "summary": "Brain providers authenticate in three ways: CLI providers (claude, codex, gemini) log in through their own binaries; API providers (openai, openrouter, anthropic) store keys in the encrypted secrets vault; Ollama is a local endpoint connection.",
4
+ "facts": [
5
+ "API keys are stored in the encrypted vault under provider/<id>/api-key and are never written to logs or plain files.",
6
+ "The Ollama endpoint URL is persisted in ~/.agent-devkit/data/preferences/providers.json.",
7
+ "CLI provider logins are managed by the provider's own binary; Agent DevKit only spawns the interactive flow.",
8
+ "A provider without credentials appears as needs-login in the model cards and never breaks the routing chain."
9
+ ]
10
+ }
@@ -0,0 +1,15 @@
1
+ {
2
+ "moduleId": "providers",
3
+ "mode": "credential-safety",
4
+ "allowedActions": [
5
+ "Report authentication status for every brain provider.",
6
+ "Store or remove provider API keys in the encrypted vault on explicit request.",
7
+ "Probe and persist the Ollama endpoint URL on explicit request."
8
+ ],
9
+ "forbiddenActions": [
10
+ "Print, log or persist an API key value anywhere outside the encrypted vault.",
11
+ "Store a credential without an explicit user request.",
12
+ "Run an interactive CLI login without the user asking for it."
13
+ ],
14
+ "approvalRequired": true
15
+ }
@@ -0,0 +1,10 @@
1
+ {
2
+ "moduleId": "providers",
3
+ "templates": [
4
+ {
5
+ "id": "providers.auth",
6
+ "template": "Summarize this Agent DevKit provider authentication operation for the user without revealing any secret values: {{operation}}",
7
+ "variables": ["operation"]
8
+ }
9
+ ]
10
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "moduleId": "providers",
3
+ "purpose": "Manage brain provider logins and connections: CLI logins, API keys in the vault and the Ollama endpoint.",
4
+ "whenToUse": [
5
+ "The user wants to see which brain providers are authenticated or connected.",
6
+ "The user wants to store or remove an API key for openai, openrouter or anthropic.",
7
+ "The user wants to connect Agent DevKit to a running Ollama server."
8
+ ],
9
+ "whenNotToUse": [
10
+ "The user wants to send a chat message or run model inference.",
11
+ "The user wants to manage generic secrets unrelated to brain providers.",
12
+ "The user wants to install or remove local GGUF models."
13
+ ]
14
+ }