agent-devkit 0.8.3 → 0.8.9

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.
Files changed (109) hide show
  1. package/README.md +91 -2
  2. package/dist/main.js +30542 -18018
  3. package/dist/main.js.map +1 -1
  4. package/package.json +3 -1
  5. package/src/assets/agents/profiles.json +5 -5
  6. package/src/assets/automations/document-template/automation.json +64 -0
  7. package/src/assets/automations/document-template/payloads/v1/document.md +14 -0
  8. package/src/assets/automations/document-template/payloads/v1/notes.md +3 -0
  9. package/src/assets/automations/document-template/readme.md +5 -0
  10. package/src/assets/automations/document-template/skill.md +39 -0
  11. package/src/assets/automations/http-health-check/automation.json +61 -0
  12. package/src/assets/automations/http-health-check/payloads/request.json +4 -0
  13. package/src/assets/automations/http-health-check/readme.md +5 -0
  14. package/src/assets/automations/http-health-check/skill.md +39 -0
  15. package/src/assets/i18n/en-US.json +35 -1
  16. package/src/assets/i18n/fr-FR.json +35 -1
  17. package/src/assets/i18n/ja-JP.json +35 -1
  18. package/src/assets/i18n/pt-BR.json +35 -1
  19. package/src/assets/i18n/zh-CN.json +35 -1
  20. package/src/assets/mcp/anthropic.json +27 -0
  21. package/src/assets/mcp/aws.json +40 -0
  22. package/src/assets/mcp/azure.json +27 -0
  23. package/src/assets/mcp/bigquery.json +27 -0
  24. package/src/assets/mcp/bitbucket.json +27 -0
  25. package/src/assets/mcp/cloudflare.json +27 -0
  26. package/src/assets/mcp/confluence.json +27 -0
  27. package/src/assets/mcp/context7.json +14 -0
  28. package/src/assets/mcp/discord.json +27 -0
  29. package/src/assets/mcp/docker.json +27 -0
  30. package/src/assets/mcp/elasticsearch.json +27 -0
  31. package/src/assets/mcp/filesystem.json +20 -0
  32. package/src/assets/mcp/firebase.json +27 -0
  33. package/src/assets/mcp/gcp.json +27 -0
  34. package/src/assets/mcp/git.json +20 -0
  35. package/src/assets/mcp/github.json +21 -0
  36. package/src/assets/mcp/gitlab.json +21 -0
  37. package/src/assets/mcp/google-drive.json +21 -0
  38. package/src/assets/mcp/hubspot.json +27 -0
  39. package/src/assets/mcp/jira.json +27 -0
  40. package/src/assets/mcp/kubernetes.json +21 -0
  41. package/src/assets/mcp/linear.json +27 -0
  42. package/src/assets/mcp/memory.json +14 -0
  43. package/src/assets/mcp/microsoft-365.json +27 -0
  44. package/src/assets/mcp/mongodb.json +27 -0
  45. package/src/assets/mcp/mysql.json +27 -0
  46. package/src/assets/mcp/neon.json +27 -0
  47. package/src/assets/mcp/netlify.json +27 -0
  48. package/src/assets/mcp/notion.json +27 -0
  49. package/src/assets/mcp/ollama.json +20 -0
  50. package/src/assets/mcp/openai.json +27 -0
  51. package/src/assets/mcp/openrouter.json +27 -0
  52. package/src/assets/mcp/outlook.json +27 -0
  53. package/src/assets/mcp/playwright.json +14 -0
  54. package/src/assets/mcp/postgres.json +14 -0
  55. package/src/assets/mcp/railway.json +27 -0
  56. package/src/assets/mcp/redis.json +27 -0
  57. package/src/assets/mcp/render.json +27 -0
  58. package/src/assets/mcp/salesforce.json +27 -0
  59. package/src/assets/mcp/sentry.json +21 -0
  60. package/src/assets/mcp/sequential-thinking.json +14 -0
  61. package/src/assets/mcp/sharepoint.json +27 -0
  62. package/src/assets/mcp/shopify.json +27 -0
  63. package/src/assets/mcp/slack.json +27 -0
  64. package/src/assets/mcp/snowflake.json +27 -0
  65. package/src/assets/mcp/stripe.json +21 -0
  66. package/src/assets/mcp/supabase.json +27 -0
  67. package/src/assets/mcp/teams.json +27 -0
  68. package/src/assets/mcp/terraform.json +14 -0
  69. package/src/assets/mcp/vercel.json +27 -0
  70. package/src/assets/prompts/core/chat.json +1 -1
  71. package/src/assets/prompts/core/tool-decision.json +10 -0
  72. package/src/assets/runtime/terminal-session-runner.cjs +13 -7
  73. package/src/assets/scaffolds/angular-app.json +18 -0
  74. package/src/assets/scaffolds/dart-cli.json +17 -0
  75. package/src/assets/scaffolds/django-app.json +19 -0
  76. package/src/assets/scaffolds/dotnet-console.json +16 -0
  77. package/src/assets/scaffolds/dotnet-webapi.json +17 -0
  78. package/src/assets/scaffolds/express-api.json +22 -0
  79. package/src/assets/scaffolds/flutter-app.json +17 -0
  80. package/src/assets/scaffolds/go-api.json +20 -0
  81. package/src/assets/scaffolds/laravel-app.json +15 -0
  82. package/src/assets/scaffolds/nestjs-api.json +21 -0
  83. package/src/assets/scaffolds/next-app.json +29 -0
  84. package/src/assets/scaffolds/node-cli.json +21 -0
  85. package/src/assets/scaffolds/python-fastapi.json +24 -0
  86. package/src/assets/scaffolds/rails-app.json +15 -0
  87. package/src/assets/scaffolds/react-native-expo.json +16 -0
  88. package/src/assets/scaffolds/react-vite.json +23 -0
  89. package/src/assets/scaffolds/rust-cli.json +16 -0
  90. package/src/modules/automations/surface/knowledge.json +11 -0
  91. package/src/modules/automations/surface/loop.json +18 -0
  92. package/src/modules/automations/surface/prompt.json +20 -0
  93. package/src/modules/automations/surface/skill.json +17 -0
  94. package/src/modules/background/surface/knowledge.json +11 -0
  95. package/src/modules/background/surface/loop.json +18 -0
  96. package/src/modules/background/surface/prompt.json +20 -0
  97. package/src/modules/background/surface/skill.json +16 -0
  98. package/src/modules/environment/surface/knowledge.json +12 -2
  99. package/src/modules/environment/surface/prompt.json +36 -1
  100. package/src/modules/environment/surface/skill.json +8 -1
  101. package/src/modules/integrations/surface/knowledge.json +4 -0
  102. package/src/modules/integrations/surface/prompt.json +1 -1
  103. package/src/modules/integrations/surface/skill.json +4 -0
  104. package/src/modules/project/surface/knowledge.json +5 -2
  105. package/src/modules/project/surface/prompt.json +5 -0
  106. package/src/modules/project/surface/skill.json +6 -3
  107. package/src/modules/runtime/surface/knowledge.json +1 -0
  108. package/src/modules/runtime/surface/prompt.json +5 -0
  109. package/src/assets/prompts/core/intent.json +0 -33
@@ -0,0 +1,20 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "ollama",
4
+ "name": "Ollama MCP",
5
+ "description": "Ollama-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://ollama.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": []
11
+ },
12
+ "environment": [],
13
+ "variables": [
14
+ {
15
+ "name": "url",
16
+ "description": "Ollama MCP endpoint URL.",
17
+ "required": true
18
+ }
19
+ ]
20
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "openai",
4
+ "name": "OpenAI MCP",
5
+ "description": "OpenAI-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://platform.openai.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/openai/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "OpenAI MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "openrouter",
4
+ "name": "OpenRouter MCP",
5
+ "description": "OpenRouter-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://openrouter.ai",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/openrouter/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "OpenRouter MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "outlook",
4
+ "name": "Outlook MCP",
5
+ "description": "Outlook-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://outlook.live.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/outlook/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Outlook MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "playwright",
4
+ "name": "Playwright MCP",
5
+ "description": "Browser automation MCP server for Playwright-driven inspection and testing.",
6
+ "transport": "stdio",
7
+ "homepage": "https://playwright.dev",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@playwright/mcp@latest"]
11
+ },
12
+ "environment": [],
13
+ "variables": []
14
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "postgres",
4
+ "name": "PostgreSQL MCP",
5
+ "description": "PostgreSQL MCP server with database URL resolved from the Agent DevKit vault at runtime.",
6
+ "transport": "stdio",
7
+ "homepage": "https://www.postgresql.org",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@modelcontextprotocol/server-postgres", "{{vault:mcp/postgres/database-url}}"]
11
+ },
12
+ "environment": [],
13
+ "variables": []
14
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "railway",
4
+ "name": "Railway MCP",
5
+ "description": "Railway-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://railway.app",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/railway/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Railway MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "redis",
4
+ "name": "Redis MCP",
5
+ "description": "Redis-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://redis.io",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/redis/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Redis MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "render",
4
+ "name": "Render MCP",
5
+ "description": "Render-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://render.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/render/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Render MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "salesforce",
4
+ "name": "Salesforce MCP",
5
+ "description": "Salesforce-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://www.salesforce.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/salesforce/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Salesforce MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "sentry",
4
+ "name": "Sentry MCP",
5
+ "description": "Sentry MCP server definition with auth token stored in the Agent DevKit vault.",
6
+ "transport": "stdio",
7
+ "homepage": "https://sentry.io",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@modelcontextprotocol/server-sentry"]
11
+ },
12
+ "environment": [
13
+ {
14
+ "name": "SENTRY_AUTH_TOKEN",
15
+ "description": "Sentry auth token stored in the Agent DevKit vault.",
16
+ "secretName": "mcp/sentry/token",
17
+ "required": true
18
+ }
19
+ ],
20
+ "variables": []
21
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "sequential-thinking",
4
+ "name": "Sequential Thinking MCP",
5
+ "description": "Reference MCP server for dynamic and reflective problem solving.",
6
+ "transport": "stdio",
7
+ "homepage": "https://github.com/modelcontextprotocol/servers",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@modelcontextprotocol/server-sequential-thinking"]
11
+ },
12
+ "environment": [],
13
+ "variables": []
14
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "sharepoint",
4
+ "name": "SharePoint MCP",
5
+ "description": "SharePoint-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://www.microsoft.com/microsoft-365/sharepoint/collaboration",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/sharepoint/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "SharePoint MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "shopify",
4
+ "name": "Shopify MCP",
5
+ "description": "Shopify-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://www.shopify.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/shopify/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Shopify MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "slack",
4
+ "name": "Slack MCP",
5
+ "description": "Slack MCP server definition with token stored in the Agent DevKit vault.",
6
+ "transport": "stdio",
7
+ "homepage": "https://slack.com",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@modelcontextprotocol/server-slack"]
11
+ },
12
+ "environment": [
13
+ {
14
+ "name": "SLACK_BOT_TOKEN",
15
+ "description": "Slack bot token stored in the Agent DevKit vault.",
16
+ "secretName": "mcp/slack/bot-token",
17
+ "required": true
18
+ },
19
+ {
20
+ "name": "SLACK_TEAM_ID",
21
+ "description": "Slack team id stored in the Agent DevKit vault when required by the server.",
22
+ "secretName": "mcp/slack/team-id",
23
+ "required": false
24
+ }
25
+ ],
26
+ "variables": []
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "snowflake",
4
+ "name": "Snowflake MCP",
5
+ "description": "Snowflake-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://www.snowflake.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/snowflake/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Snowflake MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,21 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "stripe",
4
+ "name": "Stripe MCP",
5
+ "description": "Stripe MCP server definition with secret key stored in the Agent DevKit vault.",
6
+ "transport": "stdio",
7
+ "homepage": "https://stripe.com",
8
+ "stdio": {
9
+ "command": "npx",
10
+ "args": ["-y", "@modelcontextprotocol/server-stripe"]
11
+ },
12
+ "environment": [
13
+ {
14
+ "name": "STRIPE_SECRET_KEY",
15
+ "description": "Stripe secret key stored in the Agent DevKit vault.",
16
+ "secretName": "mcp/stripe/secret-key",
17
+ "required": true
18
+ }
19
+ ],
20
+ "variables": []
21
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "supabase",
4
+ "name": "Supabase MCP",
5
+ "description": "Supabase-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://supabase.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/supabase/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Supabase MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "teams",
4
+ "name": "Microsoft Teams MCP",
5
+ "description": "Microsoft Teams-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://www.microsoft.com/microsoft-teams",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/teams/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Microsoft Teams MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -0,0 +1,14 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "terraform",
4
+ "name": "Terraform MCP",
5
+ "description": "HashiCorp Terraform MCP server.",
6
+ "transport": "stdio",
7
+ "homepage": "https://developer.hashicorp.com/terraform/mcp-server",
8
+ "stdio": {
9
+ "command": "docker",
10
+ "args": ["run", "-i", "--rm", "hashicorp/terraform-mcp-server"]
11
+ },
12
+ "environment": [],
13
+ "variables": []
14
+ }
@@ -0,0 +1,27 @@
1
+ {
2
+ "schema": "agent-devkit.mcp/v1",
3
+ "id": "vercel",
4
+ "name": "Vercel MCP",
5
+ "description": "Vercel-compatible remote MCP endpoint.",
6
+ "transport": "http",
7
+ "homepage": "https://vercel.com",
8
+ "http": {
9
+ "url": "{{url}}",
10
+ "headers": [
11
+ {
12
+ "name": "Authorization",
13
+ "description": "Authorization header value stored in the Agent DevKit vault.",
14
+ "secretName": "mcp/vercel/authorization",
15
+ "required": false
16
+ }
17
+ ]
18
+ },
19
+ "environment": [],
20
+ "variables": [
21
+ {
22
+ "name": "url",
23
+ "description": "Vercel MCP endpoint URL.",
24
+ "required": true
25
+ }
26
+ ]
27
+ }
@@ -52,7 +52,7 @@
52
52
  {
53
53
  "id": "agent-devkit.capability-map",
54
54
  "source": "core/chat",
55
- "content": "Current capability areas include project doctor/init/reset, package update, preferences, themes, aliases, personalization characters, logs, encrypted secrets, dependency inspection/planning, models, projects, sessions, conversation, runtime runs, goals and memory."
55
+ "content": "Current capability areas include project doctor/init/reset, package update, preferences, themes, aliases, personalization characters, logs, encrypted secrets, dependency setup/inspection/planning, provider login, models, projects, sessions, conversation, runtime runs, goals and memory."
56
56
  },
57
57
  {
58
58
  "id": "agent-devkit.memory-rule",
@@ -24,11 +24,21 @@
24
24
  "source": "core/tool-decision",
25
25
  "content": "Choose exactly one next action. Do not invent tools. If no listed tool helps, answer final."
26
26
  },
27
+ {
28
+ "id": "agent.runtime.direct-answer",
29
+ "source": "core/tool-decision",
30
+ "content": "A direct answer is a valid agent action. For greetings, personal questions, simple explanations, or anything that needs no external state change, answer final without using tools."
31
+ },
27
32
  {
28
33
  "id": "agent.runtime.actionability-rule",
29
34
  "source": "core/tool-decision",
30
35
  "content": "Never answer final by saying the agent cannot execute actions when a listed tool can help. Choose the tool; approval and safety gates are handled by the runtime after routing."
31
36
  },
37
+ {
38
+ "id": "agent.runtime.automation-rule",
39
+ "source": "core/tool-decision",
40
+ "content": "Use automations.search only when reusable automation could materially help: scripts, templates, repeated workflows, file/API/database processing, browser automation, or automation creation/reuse. Do not search automations for normal conversation or one-off answers."
41
+ },
32
42
  {
33
43
  "id": "agent.runtime.context-rule",
34
44
  "source": "core/tool-decision",
@@ -93,13 +93,19 @@ function createPtyTerminal() {
93
93
  : env.SHELL || process.env.SHELL || "/bin/sh";
94
94
  const args =
95
95
  process.platform === "win32" ? ["/d", "/s", "/c", session.command] : ["-lc", session.command];
96
- const ptyProcess = pty.spawn(shell, args, {
97
- cols: session.cols ?? 120,
98
- cwd: session.cwd,
99
- env,
100
- name: "xterm-256color",
101
- rows: session.rows ?? 30,
102
- });
96
+ let ptyProcess;
97
+
98
+ try {
99
+ ptyProcess = pty.spawn(shell, args, {
100
+ cols: session.cols ?? 120,
101
+ cwd: session.cwd,
102
+ env,
103
+ name: "xterm-256color",
104
+ rows: session.rows ?? 30,
105
+ });
106
+ } catch {
107
+ return undefined;
108
+ }
103
109
 
104
110
  ptyProcess.onData((chunk) => appendOutput(chunk));
105
111
  ptyProcess.onExit((event) => {
@@ -0,0 +1,18 @@
1
+ {
2
+ "schema": "agent-devkit.scaffold/v1",
3
+ "id": "angular-app",
4
+ "name": "Angular App",
5
+ "description": "Create an Angular application.",
6
+ "category": "frontend",
7
+ "kind": "application",
8
+ "requiredTooling": ["node", "npm", "angular"],
9
+ "variables": [
10
+ { "name": "name", "description": "Project directory name.", "required": true },
11
+ { "name": "directory", "description": "Parent directory.", "default": "." }
12
+ ],
13
+ "create": [
14
+ { "command": "npx", "args": ["@angular/cli@latest", "new", "{{name}}", "--defaults"] }
15
+ ],
16
+ "doctor": [{ "command": "npm", "args": ["run", "build"], "cwd": "{{name}}" }],
17
+ "outputs": ["{{name}}/angular.json", "{{name}}/src"]
18
+ }
@@ -0,0 +1,17 @@
1
+ {
2
+ "schema": "agent-devkit.scaffold/v1",
3
+ "id": "dart-cli",
4
+ "name": "Dart CLI",
5
+ "description": "Create a Dart command-line project.",
6
+ "category": "cli",
7
+ "kind": "cli",
8
+ "requiredTooling": ["dart"],
9
+ "variables": [
10
+ { "name": "name", "description": "Project directory name.", "required": true },
11
+ { "name": "directory", "description": "Parent directory.", "default": "." }
12
+ ],
13
+ "create": [{ "command": "dart", "args": ["create", "-t", "console", "{{name}}"] }],
14
+ "postCreate": [{ "command": "dart", "args": ["pub", "get"], "cwd": "{{name}}" }],
15
+ "doctor": [{ "command": "dart", "args": ["analyze"], "cwd": "{{name}}" }],
16
+ "outputs": ["{{name}}/pubspec.yaml", "{{name}}/bin/{{name}}.dart"]
17
+ }
@@ -0,0 +1,19 @@
1
+ {
2
+ "schema": "agent-devkit.scaffold/v1",
3
+ "id": "django-app",
4
+ "name": "Django App",
5
+ "description": "Create a Django project.",
6
+ "category": "backend",
7
+ "kind": "application",
8
+ "requiredTooling": ["python", "pip"],
9
+ "variables": [
10
+ { "name": "name", "description": "Project directory name.", "required": true },
11
+ { "name": "directory", "description": "Parent directory.", "default": "." }
12
+ ],
13
+ "create": [
14
+ { "command": "python", "args": ["-m", "venv", "{{name}}/.venv"] },
15
+ { "command": "python", "args": ["-m", "pip", "install", "django"], "cwd": "{{name}}" },
16
+ { "command": "django-admin", "args": ["startproject", "{{name}}", "."], "cwd": "{{name}}" }
17
+ ],
18
+ "outputs": ["{{name}}/manage.py"]
19
+ }
@@ -0,0 +1,16 @@
1
+ {
2
+ "schema": "agent-devkit.scaffold/v1",
3
+ "id": "dotnet-console",
4
+ "name": ".NET Console",
5
+ "description": "Create a .NET console project.",
6
+ "category": "cli",
7
+ "kind": "cli",
8
+ "requiredTooling": ["dotnet"],
9
+ "variables": [
10
+ { "name": "name", "description": "Project directory name.", "required": true },
11
+ { "name": "directory", "description": "Parent directory.", "default": "." }
12
+ ],
13
+ "create": [{ "command": "dotnet", "args": ["new", "console", "-n", "{{name}}"] }],
14
+ "doctor": [{ "command": "dotnet", "args": ["build"], "cwd": "{{name}}" }],
15
+ "outputs": ["{{name}}/{{name}}.csproj", "{{name}}/Program.cs"]
16
+ }