agent-toolkit-cli 1.0.3__py3-none-any.whl

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 (310) hide show
  1. agent_toolkit/__init__.py +4 -0
  2. agent_toolkit/__main__.py +3 -0
  3. agent_toolkit/_paths.py +64 -0
  4. agent_toolkit/cli/__init__.py +0 -0
  5. agent_toolkit/cli/doctor.py +453 -0
  6. agent_toolkit/cli/install.py +445 -0
  7. agent_toolkit/cli/main.py +66 -0
  8. agent_toolkit/cli/mcp.py +418 -0
  9. agent_toolkit/cli/plugin.py +213 -0
  10. agent_toolkit/cli/skills.py +421 -0
  11. agent_toolkit/loop/__init__.py +0 -0
  12. agent_toolkit/loop/gh_gate.py +626 -0
  13. agent_toolkit/loop/runner.py +1548 -0
  14. agent_toolkit/runner/__init__.py +0 -0
  15. agent_toolkit/runner/dispatcher.py +164 -0
  16. agent_toolkit/runner/policy.py +345 -0
  17. agent_toolkit/runner/providers/__init__.py +21 -0
  18. agent_toolkit/runner/providers/anthropic_provider.py +109 -0
  19. agent_toolkit/runner/providers/base.py +53 -0
  20. agent_toolkit/runner/providers/ollama_provider.py +108 -0
  21. agent_toolkit/runner/providers/openai_provider.py +105 -0
  22. agent_toolkit/runner/providers/opencode_provider.py +127 -0
  23. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/architect/AGENT.md +30 -0
  24. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/assistant/AGENT.md +59 -0
  25. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/build-error-resolver/AGENT.md +30 -0
  26. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/client-workflow-bootstrap/AGENT.md +60 -0
  27. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/code-reviewer/AGENT.md +49 -0
  28. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/database-reviewer/AGENT.md +44 -0
  29. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/docs-lookup/AGENT.md +28 -0
  30. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/e2e-runner/AGENT.md +38 -0
  31. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/performance-optimizer/AGENT.md +52 -0
  32. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/planner/AGENT.md +41 -0
  33. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/refactor-cleaner/AGENT.md +43 -0
  34. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/reference-lookup/AGENT.md +33 -0
  35. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/security-reviewer/AGENT.md +47 -0
  36. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/tdd-guide/AGENT.md +58 -0
  37. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/tech-assistant/AGENT.md +11 -0
  38. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/agents/typescript-reviewer/AGENT.md +61 -0
  39. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/catalogs/agent-catalog.yaml +202 -0
  40. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/catalogs/loop-catalog.yaml +165 -0
  41. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/catalogs/skill-catalog.yaml +699 -0
  42. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/catalogs/skills-layout.json +337 -0
  43. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/changelog-drafter/loop.yaml +40 -0
  44. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/ci-sweeper/loop.yaml +53 -0
  45. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/daily-triage/loop.yaml +47 -0
  46. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/dep-sweeper/loop.yaml +46 -0
  47. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/issue-triage/loop.yaml +40 -0
  48. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/oss-daily-briefing/loop.yaml +65 -0
  49. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/oss-pr-monitor/loop.yaml +85 -0
  50. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/oss-triage/loop.yaml +67 -0
  51. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/post-merge-cleanup/loop.yaml +44 -0
  52. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/loops/pr-babysitter/loop.yaml +46 -0
  53. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/clickup/README.md +45 -0
  54. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/clickup/config.template.json +7 -0
  55. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/clickup/wrapper.sh +23 -0
  56. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/figma/README.md +56 -0
  57. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/figma/config.template.json +9 -0
  58. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/github/README.md +11 -0
  59. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/github/config.template.json +7 -0
  60. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/github/wrapper.sh +23 -0
  61. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/linear/README.md +49 -0
  62. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/linear/config.template.json +10 -0
  63. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/notion/README.md +7 -0
  64. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/notion/config.template.json +7 -0
  65. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/notion/wrapper.sh +23 -0
  66. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/slack/README.md +8 -0
  67. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/slack/config.template.json +8 -0
  68. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/mcp/templates/slack/wrapper.sh +23 -0
  69. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/CLAUDE.md +66 -0
  70. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/assistant.md +59 -0
  71. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/build-error-resolver.md +30 -0
  72. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/client-workflow-bootstrap.md +60 -0
  73. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/contribution-planner.md +39 -0
  74. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/database-reviewer.md +44 -0
  75. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/docs-lookup.md +28 -0
  76. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/e2e-runner.md +38 -0
  77. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/performance-optimizer.md +52 -0
  78. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/planner.md +41 -0
  79. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/refactor-cleaner.md +43 -0
  80. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/reference-lookup.md +33 -0
  81. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/security-reviewer.md +47 -0
  82. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/tdd-guide.md +58 -0
  83. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/agents/typescript-reviewer.md +61 -0
  84. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/claude-code/settings.json +87 -0
  85. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/copilot/copilot-instructions.md +15 -0
  86. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/README.md +33 -0
  87. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/architect.mdc +23 -0
  88. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/assistant.mdc +25 -0
  89. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/build-error-resolver.mdc +20 -0
  90. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/code-reviewer.mdc +21 -0
  91. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/database-reviewer.mdc +29 -0
  92. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/docs-lookup.mdc +15 -0
  93. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/e2e-runner.mdc +30 -0
  94. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/performance-optimizer.mdc +27 -0
  95. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/planner.mdc +28 -0
  96. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/refactor-cleaner.mdc +26 -0
  97. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/reference-lookup.mdc +20 -0
  98. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/security-reviewer.mdc +20 -0
  99. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/tdd-guide.mdc +26 -0
  100. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/cursor/rules/typescript-reviewer.mdc +28 -0
  101. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/architect.md +30 -0
  102. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/assistant.md +52 -0
  103. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/build-error-resolver.md +31 -0
  104. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/client-workflow-bootstrap.md +66 -0
  105. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/code-reviewer.md +47 -0
  106. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/contribution-planner.md +44 -0
  107. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/database-reviewer.md +43 -0
  108. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/docs-lookup.md +28 -0
  109. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/e2e-runner.md +33 -0
  110. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/performance-optimizer.md +34 -0
  111. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/planner.md +27 -0
  112. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/refactor-cleaner.md +27 -0
  113. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/reference-lookup.md +27 -0
  114. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/security-reviewer.md +27 -0
  115. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/tdd-guide.md +27 -0
  116. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/agents/typescript-reviewer.md +30 -0
  117. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/opencode/opencode.json +37 -0
  118. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/pi/skills/architect/skill.md +5 -0
  119. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/pi/skills/assistant/skill.md +3 -0
  120. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/pi/skills/code-reviewer/skill.md +5 -0
  121. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/pi/skills/planner/skill.md +3 -0
  122. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/pi/skills/security-reviewer/skill.md +3 -0
  123. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/memories/global_rules.md +74 -0
  124. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/architect.mdc +23 -0
  125. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/build-error-resolver.mdc +20 -0
  126. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/code-reviewer.mdc +21 -0
  127. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/database-reviewer.mdc +29 -0
  128. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/docs-lookup.mdc +15 -0
  129. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/e2e-runner.mdc +30 -0
  130. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/performance-optimizer.mdc +27 -0
  131. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/planner.mdc +28 -0
  132. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/refactor-cleaner.mdc +26 -0
  133. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/security-reviewer.mdc +20 -0
  134. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/tdd-guide.mdc +26 -0
  135. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/profiles/windsurf/rules/typescript-reviewer.mdc +28 -0
  136. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/assistant/SKILL.md +213 -0
  137. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/assistant/references/AGENTS_TEMPLATE.md +0 -0
  138. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/assistant/references/ORCHESTRATION.md +0 -0
  139. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/assistant/references/REPO_INSPECTION.md +0 -0
  140. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/dev-companion/SKILL.md +65 -0
  141. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/dev-companion/references/LOOP_GUARDRAILS.md +0 -0
  142. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/onboarding/SKILL.md +119 -0
  143. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/output-handshake/SKILL.md +24 -0
  144. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/pr-fallback/SKILL.md +33 -0
  145. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/pr-fallback/references/pr-body-default.md +0 -0
  146. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/core/workspace-knowledge-sync/SKILL.md +141 -0
  147. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/data/dbt-validation/SKILL.md +41 -0
  148. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/data/snowflake-validation/SKILL.md +38 -0
  149. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/adr/SKILL.md +46 -0
  150. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/adr/references/default-template.md +0 -0
  151. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/adr/references/example-001-graphql-adoption.md +66 -0
  152. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/agreement/SKILL.md +23 -0
  153. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/agreement/references/default-template.md +0 -0
  154. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/agreement/references/example-api-versioning.md +29 -0
  155. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/bug/SKILL.md +25 -0
  156. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/bug/references/default-template.md +0 -0
  157. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/bug/references/example-search-filter-bug.md +58 -0
  158. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/decision-log/SKILL.md +27 -0
  159. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/decision-log/references/default-template.md +0 -0
  160. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/decision-log/references/example-repository-pattern.md +27 -0
  161. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/development-workflow/SKILL.md +33 -0
  162. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/development-workflow/references/default-template.md +0 -0
  163. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/development-workflow/references/default-workflow-checklist.md +44 -0
  164. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/epic/SKILL.md +21 -0
  165. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/epic/references/default-template.md +0 -0
  166. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/epic/references/example-unified-dashboard.md +40 -0
  167. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/incident/SKILL.md +23 -0
  168. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/incident/references/default-template.md +0 -0
  169. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/incident/references/example-payment-outage.md +62 -0
  170. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/management-unit-assessment/SKILL.md +105 -0
  171. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/management-unit-assessment/references/default-template.md +0 -0
  172. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/management-unit-assessment/references/example-team-assessment.md +126 -0
  173. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/meeting-minutes/SKILL.md +24 -0
  174. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/meeting-minutes/references/default-template.md +0 -0
  175. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/meeting-minutes/references/example-weekly-sync.md +72 -0
  176. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/planning/SKILL.md +30 -0
  177. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/planning/references/default-template.md +0 -0
  178. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/planning/references/example-sprint-planning.md +62 -0
  179. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/prd/SKILL.md +44 -0
  180. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/prd/references/default-template.md +0 -0
  181. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/prd/references/example-unified-api.md +71 -0
  182. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment/SKILL.md +90 -0
  183. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment/references/default-template.md +0 -0
  184. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment/references/example-platform-assessment.md +122 -0
  185. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment-evidence/SKILL.md +88 -0
  186. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment-evidence/references/default-template.md +0 -0
  187. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/project-assessment-evidence/references/example-evidence-map.md +46 -0
  188. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/spike/SKILL.md +23 -0
  189. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/spike/references/default-template.md +0 -0
  190. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/spike/references/example-graphql-federation.md +79 -0
  191. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/task/SKILL.md +20 -0
  192. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/task/references/default-template.md +0 -0
  193. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/task/references/example-nav-system.md +33 -0
  194. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/technical-unit-assessment/SKILL.md +58 -0
  195. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/technical-unit-assessment/references/default-template.md +0 -0
  196. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/technical-unit-assessment/references/example-frontend-assessment.md +112 -0
  197. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/technical-unit-assessment/references/indicator-groups.md +65 -0
  198. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/trd/SKILL.md +47 -0
  199. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/trd/references/default-template.md +0 -0
  200. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/trd/references/example-api-migration.md +122 -0
  201. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/user-story/SKILL.md +20 -0
  202. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/user-story/references/default-template.md +0 -0
  203. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/user-story/references/example-advanced-filtering.md +37 -0
  204. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/work-item/SKILL.md +30 -0
  205. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/work-item/references/default-template.md +0 -0
  206. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/work-item/references/example-routing-dashboard.md +23 -0
  207. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/workflow-client-bootstrap/SKILL.md +148 -0
  208. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/workflow-client-bootstrap/questions.yaml +165 -0
  209. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/delivery/workflow-generic-project/SKILL.md +78 -0
  210. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma/LICENSE.txt +2 -0
  211. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma/NOTICE.txt +25 -0
  212. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma/SKILL.md +95 -0
  213. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma/references/figma-mcp-config.md +82 -0
  214. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma/references/figma-tools-and-prompts.md +34 -0
  215. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-code-connect-components/LICENSE.txt +2 -0
  216. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-code-connect-components/NOTICE.txt +18 -0
  217. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-code-connect-components/SKILL.md +350 -0
  218. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-code-connect-components/references/mapping-checklist.md +7 -0
  219. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-code-connect-components/scripts/normalize_node_id.py +25 -0
  220. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-design-system-rules/LICENSE.txt +2 -0
  221. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-design-system-rules/NOTICE.txt +19 -0
  222. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-design-system-rules/SKILL.md +550 -0
  223. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-design-system-rules/references/rule-template.md +15 -0
  224. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-design-system-rules/scripts/check_agents_md.sh +9 -0
  225. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-new-file/LICENSE.txt +2 -0
  226. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-new-file/NOTICE.txt +17 -0
  227. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-create-new-file/SKILL.md +69 -0
  228. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-implement-design/LICENSE.txt +2 -0
  229. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-implement-design/NOTICE.txt +19 -0
  230. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/figma-implement-design/SKILL.md +264 -0
  231. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/SKILL.md +60 -0
  232. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/charts.csv +26 -0
  233. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/colors.csv +97 -0
  234. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/icons.csv +101 -0
  235. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/landing.csv +31 -0
  236. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/products.csv +97 -0
  237. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/react-performance.csv +45 -0
  238. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/astro.csv +54 -0
  239. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/flutter.csv +53 -0
  240. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/html-tailwind.csv +56 -0
  241. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/jetpack-compose.csv +53 -0
  242. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/nextjs.csv +53 -0
  243. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/nuxt-ui.csv +51 -0
  244. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/nuxtjs.csv +59 -0
  245. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/react-native.csv +52 -0
  246. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/react.csv +54 -0
  247. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/shadcn.csv +61 -0
  248. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/svelte.csv +54 -0
  249. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/swiftui.csv +51 -0
  250. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/stacks/vue.csv +50 -0
  251. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/styles.csv +68 -0
  252. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/typography.csv +58 -0
  253. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/ui-reasoning.csv +101 -0
  254. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/ux-guidelines.csv +100 -0
  255. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/data/web-interface.csv +31 -0
  256. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/references/pre-delivery-checklist.md +39 -0
  257. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/references/search-reference.md +44 -0
  258. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/references/ui-rules.md +35 -0
  259. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/scripts/core.py +253 -0
  260. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/scripts/design_system.py +1067 -0
  261. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/design/ui-ux-pro-max/scripts/search.py +114 -0
  262. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-address-comments/LICENSE.txt +202 -0
  263. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-address-comments/NOTICE.txt +20 -0
  264. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-address-comments/SKILL.md +69 -0
  265. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-address-comments/scripts/fetch_comments.py +237 -0
  266. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-contribution-planner/SKILL.md +157 -0
  267. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-contribution-planner/scripts/inspect_contributions.py +800 -0
  268. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-fix-ci/LICENSE.txt +201 -0
  269. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-fix-ci/NOTICE.txt +20 -0
  270. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-fix-ci/SKILL.md +71 -0
  271. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gh-fix-ci/scripts/inspect_pr_checks.py +509 -0
  272. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/github-cli-workflow/SKILL.md +49 -0
  273. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/gitlab-cli-workflow/SKILL.md +44 -0
  274. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/workflow-client-bootstrap/SKILL.md +14 -0
  275. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/forge/workflow-generic-project/SKILL.md +14 -0
  276. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/clickup-cli/SKILL.md +75 -0
  277. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/clickup-cli/references/docs-management.md +57 -0
  278. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/clickup-cli/references/task-management.md +131 -0
  279. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/clickup-cli/references/time-tracking.md +38 -0
  280. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/linear/LICENSE.txt +202 -0
  281. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/linear/NOTICE.txt +23 -0
  282. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/linear/SKILL.md +131 -0
  283. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/slack-assistant/SKILL.md +134 -0
  284. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/slack-cli/SKILL.md +105 -0
  285. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/integrations/slack-cli/references/INSTALLATION.md +42 -0
  286. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/loops/loop-runner/SKILL.md +90 -0
  287. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/ops/docs-generator/SKILL.md +81 -0
  288. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/ops/llm-cost-advisor/SKILL.md +83 -0
  289. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/ops/triage/SKILL.md +117 -0
  290. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/LICENSE.txt +201 -0
  291. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/NOTICE.txt +27 -0
  292. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/SKILL.md +142 -0
  293. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/assets/experiment-template.ipynb +110 -0
  294. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/assets/tutorial-template.ipynb +107 -0
  295. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/references/experiment-patterns.md +10 -0
  296. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/references/notebook-structure.md +17 -0
  297. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/references/quality-checklist.md +11 -0
  298. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/references/tutorial-patterns.md +9 -0
  299. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/jupyter-notebook/scripts/new_notebook.py +130 -0
  300. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/LICENSE.txt +201 -0
  301. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/NOTICE.txt +29 -0
  302. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/SKILL.md +151 -0
  303. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/references/cli.md +116 -0
  304. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/references/workflows.md +98 -0
  305. agent_toolkit_cli-1.0.3.data/data/agent_toolkit/data/skills/tooling/playwright-cli/scripts/executable_playwright_cli.sh +25 -0
  306. agent_toolkit_cli-1.0.3.dist-info/METADATA +411 -0
  307. agent_toolkit_cli-1.0.3.dist-info/RECORD +310 -0
  308. agent_toolkit_cli-1.0.3.dist-info/WHEEL +4 -0
  309. agent_toolkit_cli-1.0.3.dist-info/entry_points.txt +2 -0
  310. agent_toolkit_cli-1.0.3.dist-info/licenses/LICENSE +21 -0
@@ -0,0 +1,108 @@
1
+ """
2
+ Ollama provider for dev-companion.
3
+
4
+ Uses ollama CLI to generate responses with locally running models.
5
+ Requires: ollama installed and running with models (e.g., llama3.2, mistral).
6
+ """
7
+
8
+ import json
9
+ import subprocess
10
+ import time
11
+ from pathlib import Path
12
+ from typing import Optional
13
+
14
+ from .base import LLMProvider, LLMResponse
15
+
16
+
17
+ class OllamaProvider(LLMProvider):
18
+ name = "ollama"
19
+ is_local = True
20
+ is_free = True
21
+
22
+ def __init__(self, model: str = "llama3.2"):
23
+ self.model = model
24
+
25
+ def is_available(self) -> bool:
26
+ try:
27
+ result = subprocess.run(
28
+ ["ollama", "list"],
29
+ capture_output=True,
30
+ text=True,
31
+ timeout=5,
32
+ )
33
+ if result.returncode != 0:
34
+ return False
35
+ return self.model in result.stdout
36
+ except (FileNotFoundError, subprocess.TimeoutExpired):
37
+ return False
38
+
39
+ def supports_directory_context(self) -> bool:
40
+ return False
41
+
42
+ def get_model_name(self) -> str:
43
+ return self.model
44
+
45
+ def get_priority(self) -> int:
46
+ return 2
47
+
48
+ def generate(
49
+ self,
50
+ prompt: str,
51
+ system_prompt: Optional[str] = None,
52
+ repo_path: Optional[Path] = None,
53
+ timeout_sec: int = 300,
54
+ ) -> LLMResponse:
55
+ start_time = time.time()
56
+
57
+ messages = []
58
+ if system_prompt:
59
+ messages.append({"role": "system", "content": system_prompt})
60
+ messages.append({"role": "user", "content": prompt})
61
+
62
+ input_data = {
63
+ "model": self.model,
64
+ "messages": messages,
65
+ "stream": False,
66
+ }
67
+
68
+ try:
69
+ result = subprocess.run(
70
+ ["ollama", "api", "chat", "-"],
71
+ input=json.dumps(input_data),
72
+ capture_output=True,
73
+ text=True,
74
+ timeout=timeout_sec,
75
+ )
76
+
77
+ duration = time.time() - start_time
78
+
79
+ if result.returncode != 0:
80
+ return LLMResponse(
81
+ content=f"Error: {result.stderr}",
82
+ model=self.model,
83
+ provider=self.name,
84
+ duration_sec=duration,
85
+ )
86
+
87
+ try:
88
+ response_data = json.loads(result.stdout)
89
+ content = response_data.get("message", {}).get("content", "")
90
+ if not content:
91
+ content = str(response_data)
92
+ except json.JSONDecodeError:
93
+ content = result.stdout
94
+
95
+ return LLMResponse(
96
+ content=content,
97
+ model=self.model,
98
+ provider=self.name,
99
+ duration_sec=duration,
100
+ )
101
+
102
+ except subprocess.TimeoutExpired:
103
+ return LLMResponse(
104
+ content=f"Timeout after {timeout_sec} seconds",
105
+ model=self.model,
106
+ provider=self.name,
107
+ duration_sec=timeout_sec,
108
+ )
@@ -0,0 +1,105 @@
1
+ """
2
+ OpenAI provider for dev-companion.
3
+
4
+ Uses OpenAI API as optional paid provider.
5
+ Requires: OPENAI_API_KEY environment variable.
6
+ """
7
+
8
+ import json
9
+ import os
10
+ import time
11
+ from pathlib import Path
12
+ from typing import Optional
13
+
14
+ from .base import LLMProvider, LLMResponse
15
+
16
+
17
+ class OpenAIProvider(LLMProvider):
18
+ name = "openai"
19
+ is_local = False
20
+ is_free = False
21
+
22
+ def __init__(self, model: str = "gpt-4o-mini"):
23
+ self.model = model
24
+
25
+ def is_available(self) -> bool:
26
+ return bool(os.environ.get("OPENAI_API_KEY"))
27
+
28
+ def supports_directory_context(self) -> bool:
29
+ return False
30
+
31
+ def get_model_name(self) -> str:
32
+ return self.model
33
+
34
+ def get_priority(self) -> int:
35
+ return 20
36
+
37
+ def generate(
38
+ self,
39
+ prompt: str,
40
+ system_prompt: Optional[str] = None,
41
+ repo_path: Optional[Path] = None,
42
+ timeout_sec: int = 300,
43
+ ) -> LLMResponse:
44
+ import urllib.request
45
+ import urllib.error
46
+
47
+ start_time = time.time()
48
+
49
+ headers = {
50
+ "Content-Type": "application/json",
51
+ "Authorization": f"Bearer {os.environ['OPENAI_API_KEY']}",
52
+ }
53
+
54
+ messages = []
55
+ if system_prompt:
56
+ messages.append({"role": "system", "content": system_prompt})
57
+ messages.append({"role": "user", "content": prompt})
58
+
59
+ data = {
60
+ "model": self.model,
61
+ "messages": messages,
62
+ "max_tokens": 4096,
63
+ }
64
+
65
+ try:
66
+ req = urllib.request.Request(
67
+ "https://api.openai.com/v1/chat/completions",
68
+ data=json.dumps(data).encode(),
69
+ headers=headers,
70
+ method="POST",
71
+ )
72
+
73
+ with urllib.request.urlopen(req, timeout=timeout_sec) as response:
74
+ result = json.loads(response.read().decode())
75
+
76
+ duration = time.time() - start_time
77
+
78
+ content = (
79
+ result.get("choices", [{}])[0].get("message", {}).get("content", "")
80
+ )
81
+ usage = result.get("usage", {})
82
+
83
+ return LLMResponse(
84
+ content=content,
85
+ model=self.model,
86
+ provider=self.name,
87
+ tokens_used=usage.get("total_tokens"),
88
+ duration_sec=duration,
89
+ )
90
+
91
+ except urllib.error.HTTPError as e:
92
+ body = e.read().decode() if e.fp else ""
93
+ return LLMResponse(
94
+ content=f"HTTP Error: {e.code} - {e.reason}\n{body}",
95
+ model=self.model,
96
+ provider=self.name,
97
+ duration_sec=time.time() - start_time,
98
+ )
99
+ except Exception as e:
100
+ return LLMResponse(
101
+ content=f"Error: {str(e)}",
102
+ model=self.model,
103
+ provider=self.name,
104
+ duration_sec=time.time() - start_time,
105
+ )
@@ -0,0 +1,127 @@
1
+ """
2
+ OpenCode provider for dev-companion.
3
+
4
+ Uses opencode run command to generate responses.
5
+ Default model: big-pickle (free, local).
6
+ """
7
+
8
+ import json
9
+ import subprocess
10
+ import time
11
+ from pathlib import Path
12
+ from typing import Optional
13
+
14
+ from .base import LLMProvider, LLMResponse
15
+
16
+
17
+ class OpenCodeProvider(LLMProvider):
18
+ name = "opencode"
19
+ is_local = True
20
+ is_free = True
21
+
22
+ def __init__(self, model: str = "opencode/big-pickle"):
23
+ self.model = model
24
+
25
+ def is_available(self) -> bool:
26
+ try:
27
+ result = subprocess.run(
28
+ ["opencode", "--version"],
29
+ capture_output=True,
30
+ timeout=5,
31
+ )
32
+ return result.returncode == 0
33
+ except (FileNotFoundError, subprocess.TimeoutExpired):
34
+ return False
35
+
36
+ def supports_directory_context(self) -> bool:
37
+ return True
38
+
39
+ def get_model_name(self) -> str:
40
+ return self.model
41
+
42
+ def get_priority(self) -> int:
43
+ return 1
44
+
45
+ def generate(
46
+ self,
47
+ prompt: str,
48
+ system_prompt: Optional[str] = None,
49
+ repo_path: Optional[Path] = None,
50
+ timeout_sec: int = 300,
51
+ ) -> LLMResponse:
52
+ start_time = time.time()
53
+
54
+ cmd = [
55
+ "opencode",
56
+ "run",
57
+ "--model",
58
+ self.model,
59
+ "--format",
60
+ "json",
61
+ ]
62
+
63
+ if repo_path:
64
+ cmd.extend(["--dir", str(repo_path)])
65
+
66
+ full_prompt = prompt
67
+ if system_prompt:
68
+ full_prompt = f"{system_prompt}\n\n---\n\n{prompt}"
69
+
70
+ cmd.append(full_prompt)
71
+
72
+ try:
73
+ result = subprocess.run(
74
+ cmd,
75
+ capture_output=True,
76
+ text=True,
77
+ timeout=timeout_sec,
78
+ )
79
+
80
+ duration = time.time() - start_time
81
+
82
+ if result.returncode != 0:
83
+ return LLMResponse(
84
+ content=f"Error: {result.stderr}",
85
+ model=self.model,
86
+ provider=self.name,
87
+ duration_sec=duration,
88
+ )
89
+
90
+ try:
91
+ lines = result.stdout.strip().split("\n")
92
+ text_parts = []
93
+ for line in lines:
94
+ try:
95
+ data = json.loads(line)
96
+ if data.get("type") == "text":
97
+ part = data.get("part", {})
98
+ if isinstance(part, dict) and "text" in part:
99
+ text_parts.append(part.get("text", ""))
100
+ elif "text" in data:
101
+ text_parts.append(data.get("text", ""))
102
+ except json.JSONDecodeError:
103
+ continue
104
+ if text_parts:
105
+ content = "\n".join(text_parts)
106
+ else:
107
+ content = result.stdout
108
+ except Exception:
109
+ content = result.stdout
110
+
111
+ return LLMResponse(
112
+ content=content,
113
+ model=self.model,
114
+ provider=self.name,
115
+ duration_sec=duration,
116
+ )
117
+
118
+ except subprocess.TimeoutExpired:
119
+ return LLMResponse(
120
+ content=f"Timeout after {timeout_sec} seconds",
121
+ model=self.model,
122
+ provider=self.name,
123
+ duration_sec=timeout_sec,
124
+ )
125
+
126
+ def _extract_content(self, response_data) -> str:
127
+ return ""
@@ -0,0 +1,30 @@
1
+ ---
2
+ name: architect
3
+ description: Software architecture and system design specialist. Use when designing systems, choosing patterns, evaluating technical approaches, or planning large-scale structural changes.
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are a software architect at agent-toolkit. Your role is to help with high-level design decisions, system architecture, and technical trade-off analysis.
8
+
9
+ ## When invoked
10
+ 1. Understand the current system by reading relevant files
11
+ 2. Identify the architectural context — tech stack, constraints, existing patterns
12
+ 3. Propose solutions with explicit trade-offs
13
+
14
+ ## Focus areas
15
+ - SOLID principles and clean architecture
16
+ - Scalability, maintainability, and testability
17
+ - Design patterns appropriate to the context
18
+ - Technology selection with rationale
19
+ - Migration and refactoring strategies
20
+ - API design and service boundaries
21
+ - Data modeling decisions
22
+
23
+ ## Output format
24
+ - **Context**: Brief summary of current state
25
+ - **Options**: 2–3 alternatives with trade-offs
26
+ - **Recommendation**: Preferred approach with rationale
27
+ - **Risks**: Known risks and mitigations
28
+ - **Next steps**: Concrete implementation steps
29
+
30
+ Prefer simple solutions over clever ones. Document your reasoning. When uncertain, surface the trade-off rather than guessing.
@@ -0,0 +1,59 @@
1
+ ---
2
+ name: assistant
3
+ description: agent-toolkit Dev Companion — follows internal conventions and best practices. Use for any work in agent-toolkit or client repositories to ensure compliance with agent-toolkit standards.
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are the agent-toolkit Dev Companion. Ensure all work follows agent-toolkit standards and conventions.
8
+
9
+ ## Repository inspection order
10
+ When starting work in any repository, read in this order:
11
+ 1. `README.md` — understand the project purpose and stack
12
+ 2. `docs/` directory — architecture, design, and operational docs
13
+ 3. `AGENTS.md` or `.claude/CLAUDE.md` — agent-specific instructions (primary contract)
14
+ 4. `CONTRIBUTING.md` — contribution guidelines
15
+ 5. PR templates (`.github/PULL_REQUEST_TEMPLATE.md`)
16
+ 6. Task runners: `Makefile`, `package.json` scripts, `justfile`
17
+ 7. `devcontainer.json` and CI workflows (`.github/workflows/`)
18
+ 8. Configuration files
19
+
20
+ Always cite which file a rule or convention comes from.
21
+
22
+ ## agent-toolkit standards
23
+ - Shell scripts: `set -euo pipefail`, idempotent, OS detection before package manager calls
24
+ - chezmoi repos: `Internal chezmoi commands use the `dots-` prefix (agentic-workstation convention)
25
+ - Documentation: update when behavior changes
26
+ - Secrets: never commit — use `.env.example` for templates
27
+ - English: all documentation, commit messages, and ticket descriptions
28
+
29
+ ## CLI tool names to know
30
+ - **Confluence CLI**: `confluence-as` (also available as `confluence` via wrapper). The external skill pack docs reference `confluence` — both work.
31
+ - **JIRA CLI**: `jira-as`
32
+ - Use `agent-toolkit doctor`, `agent-toolkit skills`, `agent-toolkit install` instead
33
+
34
+ ## Agent delegation
35
+ Available subagents (invoke with `@name` in your message):
36
+ - `@planner` — feature planning and task breakdown
37
+ - `@code-reviewer` — code quality review
38
+ - `@security-reviewer` — security audit
39
+ - `@tdd-guide` — TDD workflow
40
+ - `@reference-lookup` — agent-toolkit examples from public examples
41
+ - `@architect` — system design and architecture decisions
42
+ - `@build-error-resolver` — build/CI error diagnosis
43
+ - `@database-reviewer` — SQL and database review
44
+ - `@performance-optimizer` — performance analysis
45
+ - `@typescript-reviewer` — TypeScript/JS code review
46
+ - `@e2e-runner` — Playwright E2E tests
47
+ - `@refactor-cleaner` — dead code cleanup and refactoring
48
+ - `@tech-assistant` — agent-toolkit operational procedures
49
+
50
+ These are agents defined in `~/.claude/agents/` — they are NOT skills.
51
+
52
+ ## When working on client projects
53
+ - Respect existing patterns and conventions in the project
54
+ - Check for project-specific AGENTS.md or CLAUDE.md
55
+ - Follow the project's established branching and PR strategy
56
+ - Escalate conflicts between agent-toolkit standards and project conventions
57
+
58
+ ## Output
59
+ Cite sources (which file the convention came from). Surface conflicts explicitly. Ask when instructions are ambiguous rather than assuming.
@@ -0,0 +1,30 @@
1
+ ---
2
+ name: build-error-resolver
3
+ description: Build and TypeScript error resolution specialist. Use proactively when encountering compilation errors, type errors, lint failures, or CI pipeline failures.
4
+ ---
5
+
6
+ You are a build error resolution specialist at agent-toolkit. Fix compilation errors efficiently by targeting root causes, not symptoms.
7
+
8
+ ## When invoked
9
+ 1. Read the full error message including stack trace
10
+ 2. Locate the source files mentioned in the error
11
+ 3. Understand the context before changing anything
12
+ 4. Apply the minimal fix that resolves the root cause
13
+
14
+ ## Common error types
15
+ - TypeScript: missing types, incorrect generics, incompatible assignments
16
+ - Import/export: missing modules, wrong paths, circular dependencies
17
+ - ESLint/Prettier: formatting, unused vars, rule violations
18
+ - Build config: webpack/vite/tsc configuration issues
19
+ - Dependency conflicts: incompatible package versions
20
+
21
+ ## Approach
22
+ 1. Read failing file(s) completely — understand why the error exists
23
+ 2. Check related files (imports, type definitions, configs)
24
+ 3. Apply the fix with a clear explanation
25
+ 4. Verify the fix does not introduce new errors
26
+
27
+ ## Hard rules
28
+ - Never use `any` as a quick fix unless absolutely necessary and explicitly documented
29
+ - Never suppress errors with `// @ts-ignore` without a detailed comment explaining why
30
+ - Never silence ESLint with `// eslint-disable` without justification
@@ -0,0 +1,60 @@
1
+ ---
2
+ name: client-workflow-bootstrap
3
+ description: "agent-toolkit client workflow bootstrap specialist. Use when onboarding a new client project or updating an existing delivery workflow skill pair. Conducts a structured interview and generates <client>-workflow + <client>-dev-companion skills, then opens a draft PR to agent-toolkit."
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are the agent-toolkit client workflow bootstrap specialist. Your job is to conduct a structured interview
8
+ with the user to capture all details needed for a client project, then generate a complete, consistent
9
+ delivery workflow skill pair (`<client>-workflow` + `<client>-dev-companion`) and open
10
+ a draft PR to `ulises-jeremias/agent-toolkit`.
11
+
12
+ ## Interview process
13
+
14
+ Work through these four groups in order. Summarise each group before continuing:
15
+
16
+ 1. **Identity** — client name, slug, ticket system (Jira/ClickUp/other), docs platform, repo host and org
17
+ 2. **Workflow** — custom ticket statuses, done criteria, base branch, staging/QA gates, deploy method
18
+ 3. **Stack** — repo list with roles, AGENTS.md presence, validation tools, data artifact policy
19
+ 4. **Conventions** — branch naming, PR style (draft vs direct), PR template presence, Slack channel, guardrails
20
+
21
+ Full question details are in `workflow-client-bootstrap/questions.yaml`.
22
+
23
+ ## Gate before generating
24
+
25
+ Present a structured summary of all collected answers and the list of files you will create.
26
+ **Ask explicitly: "Does everything look correct? Shall I generate the files?"**
27
+ Do not create any files until the user confirms.
28
+
29
+ ## What to generate
30
+
31
+ Follow the patterns of existing bundled workflow skills as templates:
32
+
33
+ - `skills/<slug>-workflow/SKILL.md` — delivery phases adapted to client lifecycle
34
+ - `skills/<slug>-workflow/reference.md` — repos, URLs, ticket lifecycle, validation
35
+ - `skills/<slug>-workflow/skill.json`
36
+ - `skills/<slug>-dev-companion/SKILL.md`
37
+ - `skills/<slug>-dev-companion/skill.json`
38
+ - Update `skills/skill-catalog.yaml` (two new entries)
39
+ - `dot_claude/agents/<slug>-delivery.md`
40
+ - `dot_config/opencode/agents/<slug>-delivery.md`
41
+
42
+ ## Commit and PR
43
+
44
+ After the user approves the generated files:
45
+ 1. `git add` all new/modified files
46
+ 2. Commit: `feat(skills): add <slug>-workflow and dev-companion skill pair`
47
+ 3. Push branch and create a **draft PR** via `github-cli-workflow` targeting `main`
48
+ 4. Share the PR URL with the user
49
+
50
+ ## Updating an existing workflow
51
+
52
+ If the user wants to update rather than create:
53
+ 1. Load the existing files first
54
+ 2. Ask which interview groups need revisiting
55
+ 3. Show a diff summary before applying any changes
56
+ 4. Same commit/PR flow
57
+
58
+ ## Output standard
59
+
60
+ All generated file content, PR text, and commit messages must be in **English**.
@@ -0,0 +1,49 @@
1
+ ---
2
+ name: code-reviewer
3
+ description: Expert code review specialist. Proactively reviews code for quality, security, and maintainability. Use immediately after writing or modifying any significant code.
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are a senior code reviewer at agent-toolkit. Review code changes thoroughly and provide actionable, prioritized feedback.
8
+
9
+ ## When invoked
10
+ 1. Run `git diff HEAD` or `git diff --staged` to see recent changes
11
+ 2. Read the full context of modified files, not just the diff
12
+ 3. Check related tests, types, and documentation
13
+
14
+ ## Review checklist
15
+
16
+ **Quality**
17
+ - Code is clear and self-documenting
18
+ - Functions do one thing (Single Responsibility)
19
+ - No code duplication (DRY)
20
+ - Meaningful names for variables, functions, and types
21
+
22
+ **Correctness**
23
+ - Error handling covers all failure paths
24
+ - Edge cases handled: null, empty, boundary values
25
+ - No off-by-one errors in loops or array access
26
+
27
+ **Security**
28
+ - No exposed secrets, tokens, or credentials
29
+ - Input validation before use
30
+ - SQL/command injection prevention
31
+ - Proper auth/authz checks
32
+
33
+ **Performance**
34
+ - No N+1 queries
35
+ - No unnecessary re-renders or recomputations
36
+ - Appropriate use of caching
37
+
38
+ **Testing**
39
+ - New behavior has test coverage
40
+ - Tests are meaningful, not just coverage padding
41
+
42
+ ## Output format
43
+ Organize by priority:
44
+
45
+ **🚨 Critical** (block merge): ...
46
+ **⚠️ Warning** (should fix): ...
47
+ **💡 Suggestion** (consider): ...
48
+
49
+ Include code snippets showing the fix for each critical and warning item.
@@ -0,0 +1,44 @@
1
+ ---
2
+ name: database-reviewer
3
+ description: PostgreSQL and database specialist. Use for schema design, query optimization, migration review, index analysis, and ORM usage questions.
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are a PostgreSQL database specialist at agent-toolkit.
8
+
9
+ ## When invoked
10
+ 1. Read the relevant schema, migration files, and ORM models
11
+ 2. Analyze the query or design in question
12
+ 3. Check existing patterns in the codebase for consistency
13
+
14
+ ## Focus areas
15
+
16
+ **Schema design**
17
+ - Proper normalization (3NF unless intentionally denormalized)
18
+ - Appropriate data types — avoid over-using TEXT/VARCHAR
19
+ - Constraints: NOT NULL, UNIQUE, FK, CHECK
20
+ - Naming: snake_case, plural table names
21
+
22
+ **Query optimization**
23
+ - Index usage (EXPLAIN ANALYZE output)
24
+ - N+1 query detection in ORM calls
25
+ - JOIN strategies and selectivity
26
+ - Pagination: LIMIT/OFFSET vs keyset pagination
27
+ - Avoiding full table scans in hot paths
28
+
29
+ **Migrations**
30
+ - Production-safe operations (avoid long locks)
31
+ - Reversibility of each migration step
32
+ - Backfill strategies for large tables
33
+ - Zero-downtime patterns
34
+
35
+ **ORM (Prisma / Drizzle / TypeORM)**
36
+ - Correct eager vs lazy loading
37
+ - Transaction scope and isolation
38
+ - Connection pool management
39
+
40
+ ## Output format
41
+ 1. Explain the issue
42
+ 2. Show the problematic SQL/schema
43
+ 3. Provide the optimized version with explanation
44
+ 4. Note any production deployment concerns
@@ -0,0 +1,28 @@
1
+ ---
2
+ name: docs-lookup
3
+ description: Documentation and API reference specialist. Use when searching for framework docs, library APIs, configuration options, or usage examples.
4
+ tools: Read, Grep, Glob, Bash
5
+ ---
6
+
7
+ You are a documentation researcher at agent-toolkit. Find and summarize relevant technical documentation quickly.
8
+
9
+ ## When invoked
10
+ 1. Identify what documentation is being searched for
11
+ 2. Check if relevant docs exist locally (README, docs/ folder)
12
+ 3. Synthesize and present the relevant information concisely
13
+
14
+ ## What you help with
15
+ - Framework and library API documentation
16
+ - Configuration options and their defaults
17
+ - Migration guides between versions
18
+ - Code examples and patterns
19
+ - Error message explanations
20
+ - Environment variable references
21
+
22
+ ## Output format
23
+ - Direct answer first
24
+ - Relevant code example
25
+ - Source reference (file path or URL)
26
+ - Version-specific differences if relevant
27
+
28
+ Keep responses focused and practical. If the question is ambiguous, ask for clarification before searching.
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: e2e-runner
3
+ description: End-to-end testing specialist using Playwright. Use when writing, debugging, or running E2E tests, or when setting up Playwright test infrastructure.
4
+ ---
5
+
6
+ You are a Playwright E2E testing specialist at agent-toolkit.
7
+
8
+ ## When invoked
9
+ 1. Understand the feature or user journey being tested
10
+ 2. Check existing test patterns and page objects in the codebase
11
+ 3. Write tests following established project conventions
12
+
13
+ ## Selector priority (most to least resilient)
14
+ 1. `getByRole()` — accessible and intent-revealing
15
+ 2. `getByLabel()` — for form inputs
16
+ 3. `getByText()` — for content-based selection
17
+ 4. `data-testid` — when semantic selectors are not available
18
+ 5. CSS selectors — last resort only
19
+
20
+ ## Test structure
21
+ - One test file per feature or page
22
+ - `test.describe` for logical grouping
23
+ - `beforeEach`/`afterEach` for setup and teardown
24
+ - Page Object Model for reusable interactions
25
+
26
+ ## Reliability rules
27
+ - Use `await expect(locator).toBeVisible()` — not `await locator.isVisible()`
28
+ - Never use `page.waitForTimeout()` — use `waitForResponse`, `waitForURL`, or expect assertions
29
+ - Mock external services and APIs in tests
30
+ - Test network failures and loading states
31
+
32
+ ## Accessibility
33
+ - Test keyboard navigation for interactive elements
34
+ - Verify ARIA labels are present and meaningful
35
+ - Check focus management after modals/dialogs
36
+
37
+ ## Output format
38
+ Complete, runnable test code with explanation of selector choices and any flakiness risks noted.