ag-cortex 0.1.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.
Files changed (162) hide show
  1. package/.agent/commands/test-browser.md +339 -0
  2. package/.agent/rules/00-constitution.md +46 -0
  3. package/.agent/rules/project-rules.md +49 -0
  4. package/.agent/skills/agent-browser/SKILL.md +223 -0
  5. package/.agent/skills/agent-native-architecture/SKILL.md +435 -0
  6. package/.agent/skills/agent-native-architecture/references/action-parity-discipline.md +409 -0
  7. package/.agent/skills/agent-native-architecture/references/agent-execution-patterns.md +467 -0
  8. package/.agent/skills/agent-native-architecture/references/agent-native-testing.md +582 -0
  9. package/.agent/skills/agent-native-architecture/references/architecture-patterns.md +478 -0
  10. package/.agent/skills/agent-native-architecture/references/dynamic-context-injection.md +338 -0
  11. package/.agent/skills/agent-native-architecture/references/files-universal-interface.md +301 -0
  12. package/.agent/skills/agent-native-architecture/references/from-primitives-to-domain-tools.md +359 -0
  13. package/.agent/skills/agent-native-architecture/references/mcp-tool-design.md +506 -0
  14. package/.agent/skills/agent-native-architecture/references/mobile-patterns.md +871 -0
  15. package/.agent/skills/agent-native-architecture/references/product-implications.md +443 -0
  16. package/.agent/skills/agent-native-architecture/references/refactoring-to-prompt-native.md +317 -0
  17. package/.agent/skills/agent-native-architecture/references/self-modification.md +269 -0
  18. package/.agent/skills/agent-native-architecture/references/shared-workspace-architecture.md +680 -0
  19. package/.agent/skills/agent-native-architecture/references/system-prompt-design.md +250 -0
  20. package/.agent/skills/agent-native-reviewer/SKILL.md +246 -0
  21. package/.agent/skills/andrew-kane-gem-writer/SKILL.md +184 -0
  22. package/.agent/skills/andrew-kane-gem-writer/references/database-adapters.md +231 -0
  23. package/.agent/skills/andrew-kane-gem-writer/references/module-organization.md +121 -0
  24. package/.agent/skills/andrew-kane-gem-writer/references/rails-integration.md +183 -0
  25. package/.agent/skills/andrew-kane-gem-writer/references/resources.md +119 -0
  26. package/.agent/skills/andrew-kane-gem-writer/references/testing-patterns.md +261 -0
  27. package/.agent/skills/ankane-readme-writer/SKILL.md +50 -0
  28. package/.agent/skills/architecture-strategist/SKILL.md +52 -0
  29. package/.agent/skills/best-practices-researcher/SKILL.md +100 -0
  30. package/.agent/skills/bug-reproduction-validator/SKILL.md +67 -0
  31. package/.agent/skills/code-simplicity-reviewer/SKILL.md +85 -0
  32. package/.agent/skills/coding-tutor/.claude-plugin/plugin.json +9 -0
  33. package/.agent/skills/coding-tutor/README.md +37 -0
  34. package/.agent/skills/coding-tutor/commands/quiz-me.md +1 -0
  35. package/.agent/skills/coding-tutor/commands/sync-tutorials.md +25 -0
  36. package/.agent/skills/coding-tutor/commands/teach-me.md +1 -0
  37. package/.agent/skills/coding-tutor/skills/coding-tutor/SKILL.md +214 -0
  38. package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/create_tutorial.py +202 -0
  39. package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/index_tutorials.py +203 -0
  40. package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/quiz_priority.py +190 -0
  41. package/.agent/skills/coding-tutor/skills/coding-tutor/scripts/setup_tutorials.py +132 -0
  42. package/.agent/skills/compound-docs/SKILL.md +510 -0
  43. package/.agent/skills/compound-docs/assets/critical-pattern-template.md +34 -0
  44. package/.agent/skills/compound-docs/assets/resolution-template.md +93 -0
  45. package/.agent/skills/compound-docs/references/yaml-schema.md +65 -0
  46. package/.agent/skills/compound-docs/schema.yaml +176 -0
  47. package/.agent/skills/create-agent-skills/SKILL.md +299 -0
  48. package/.agent/skills/create-agent-skills/references/api-security.md +226 -0
  49. package/.agent/skills/create-agent-skills/references/be-clear-and-direct.md +531 -0
  50. package/.agent/skills/create-agent-skills/references/best-practices.md +404 -0
  51. package/.agent/skills/create-agent-skills/references/common-patterns.md +595 -0
  52. package/.agent/skills/create-agent-skills/references/core-principles.md +437 -0
  53. package/.agent/skills/create-agent-skills/references/executable-code.md +175 -0
  54. package/.agent/skills/create-agent-skills/references/iteration-and-testing.md +474 -0
  55. package/.agent/skills/create-agent-skills/references/official-spec.md +185 -0
  56. package/.agent/skills/create-agent-skills/references/recommended-structure.md +168 -0
  57. package/.agent/skills/create-agent-skills/references/skill-structure.md +372 -0
  58. package/.agent/skills/create-agent-skills/references/using-scripts.md +113 -0
  59. package/.agent/skills/create-agent-skills/references/using-templates.md +112 -0
  60. package/.agent/skills/create-agent-skills/references/workflows-and-validation.md +510 -0
  61. package/.agent/skills/create-agent-skills/templates/router-skill.md +73 -0
  62. package/.agent/skills/create-agent-skills/templates/simple-skill.md +33 -0
  63. package/.agent/skills/create-agent-skills/workflows/add-reference.md +96 -0
  64. package/.agent/skills/create-agent-skills/workflows/add-script.md +93 -0
  65. package/.agent/skills/create-agent-skills/workflows/add-template.md +74 -0
  66. package/.agent/skills/create-agent-skills/workflows/add-workflow.md +120 -0
  67. package/.agent/skills/create-agent-skills/workflows/audit-skill.md +138 -0
  68. package/.agent/skills/create-agent-skills/workflows/create-domain-expertise-skill.md +605 -0
  69. package/.agent/skills/create-agent-skills/workflows/create-new-skill.md +191 -0
  70. package/.agent/skills/create-agent-skills/workflows/get-guidance.md +121 -0
  71. package/.agent/skills/create-agent-skills/workflows/upgrade-to-router.md +161 -0
  72. package/.agent/skills/create-agent-skills/workflows/verify-skill.md +204 -0
  73. package/.agent/skills/data-integrity-guardian/SKILL.md +70 -0
  74. package/.agent/skills/data-migration-expert/SKILL.md +97 -0
  75. package/.agent/skills/deployment-verification-agent/SKILL.md +159 -0
  76. package/.agent/skills/design-implementation-reviewer/SKILL.md +85 -0
  77. package/.agent/skills/design-iterator/SKILL.md +197 -0
  78. package/.agent/skills/dhh-rails-reviewer/SKILL.md +45 -0
  79. package/.agent/skills/dhh-rails-style/SKILL.md +184 -0
  80. package/.agent/skills/dhh-rails-style/references/architecture.md +653 -0
  81. package/.agent/skills/dhh-rails-style/references/controllers.md +303 -0
  82. package/.agent/skills/dhh-rails-style/references/frontend.md +510 -0
  83. package/.agent/skills/dhh-rails-style/references/gems.md +266 -0
  84. package/.agent/skills/dhh-rails-style/references/models.md +359 -0
  85. package/.agent/skills/dhh-rails-style/references/testing.md +338 -0
  86. package/.agent/skills/dspy-ruby/SKILL.md +594 -0
  87. package/.agent/skills/dspy-ruby/assets/config-template.rb +359 -0
  88. package/.agent/skills/dspy-ruby/assets/module-template.rb +326 -0
  89. package/.agent/skills/dspy-ruby/assets/signature-template.rb +143 -0
  90. package/.agent/skills/dspy-ruby/references/core-concepts.md +265 -0
  91. package/.agent/skills/dspy-ruby/references/optimization.md +623 -0
  92. package/.agent/skills/dspy-ruby/references/providers.md +305 -0
  93. package/.agent/skills/every-style-editor/SKILL.md +134 -0
  94. package/.agent/skills/every-style-editor/references/EVERY_WRITE_STYLE.md +529 -0
  95. package/.agent/skills/figma-design-sync/SKILL.md +166 -0
  96. package/.agent/skills/file-todos/SKILL.md +251 -0
  97. package/.agent/skills/file-todos/assets/todo-template.md +155 -0
  98. package/.agent/skills/framework-docs-researcher/SKILL.md +83 -0
  99. package/.agent/skills/frontend-design/SKILL.md +42 -0
  100. package/.agent/skills/gemini-imagegen/SKILL.md +237 -0
  101. package/.agent/skills/gemini-imagegen/requirements.txt +2 -0
  102. package/.agent/skills/gemini-imagegen/scripts/compose_images.py +168 -0
  103. package/.agent/skills/gemini-imagegen/scripts/edit_image.py +157 -0
  104. package/.agent/skills/gemini-imagegen/scripts/gemini_images.py +265 -0
  105. package/.agent/skills/gemini-imagegen/scripts/generate_image.py +147 -0
  106. package/.agent/skills/gemini-imagegen/scripts/multi_turn_chat.py +215 -0
  107. package/.agent/skills/git-history-analyzer/SKILL.md +42 -0
  108. package/.agent/skills/git-worktree/SKILL.md +302 -0
  109. package/.agent/skills/git-worktree/scripts/worktree-manager.sh +345 -0
  110. package/.agent/skills/julik-frontend-races-reviewer/SKILL.md +222 -0
  111. package/.agent/skills/kieran-python-reviewer/SKILL.md +104 -0
  112. package/.agent/skills/kieran-rails-reviewer/SKILL.md +86 -0
  113. package/.agent/skills/kieran-typescript-reviewer/SKILL.md +95 -0
  114. package/.agent/skills/lint/SKILL.md +16 -0
  115. package/.agent/skills/pattern-recognition-specialist/SKILL.md +57 -0
  116. package/.agent/skills/performance-oracle/SKILL.md +110 -0
  117. package/.agent/skills/pr-comment-resolver/SKILL.md +69 -0
  118. package/.agent/skills/rclone/SKILL.md +150 -0
  119. package/.agent/skills/rclone/scripts/check_setup.sh +60 -0
  120. package/.agent/skills/repo-research-analyst/SKILL.md +113 -0
  121. package/.agent/skills/security-sentinel/SKILL.md +93 -0
  122. package/.agent/skills/skill-creator/SKILL.md +209 -0
  123. package/.agent/skills/skill-creator/scripts/init_skill.py +304 -0
  124. package/.agent/skills/skill-creator/scripts/package_skill.py +112 -0
  125. package/.agent/skills/skill-creator/scripts/quick_validate.py +72 -0
  126. package/.agent/skills/spec-flow-analyzer/SKILL.md +113 -0
  127. package/.agent/skills/test-agent/SKILL.md +4 -0
  128. package/.agent/workflows/agent-native-audit.md +277 -0
  129. package/.agent/workflows/ask-user-question.md +21 -0
  130. package/.agent/workflows/changelog.md +137 -0
  131. package/.agent/workflows/compound.md +202 -0
  132. package/.agent/workflows/create-agent-skill.md +8 -0
  133. package/.agent/workflows/deepen-plan-research.md +334 -0
  134. package/.agent/workflows/deepen-plan-synthesis.md +182 -0
  135. package/.agent/workflows/deepen-plan.md +79 -0
  136. package/.agent/workflows/feature-video.md +342 -0
  137. package/.agent/workflows/generate-command.md +162 -0
  138. package/.agent/workflows/heal-skill.md +142 -0
  139. package/.agent/workflows/lfg.md +20 -0
  140. package/.agent/workflows/plan-analysis.md +67 -0
  141. package/.agent/workflows/plan-next-steps.md +63 -0
  142. package/.agent/workflows/plan-review.md +33 -0
  143. package/.agent/workflows/plan-synthesis.md +106 -0
  144. package/.agent/workflows/plan.md +49 -0
  145. package/.agent/workflows/report-bug.md +150 -0
  146. package/.agent/workflows/reproduce-bug.md +99 -0
  147. package/.agent/workflows/resolve-parallel.md +34 -0
  148. package/.agent/workflows/resolve-pr-parallel.md +49 -0
  149. package/.agent/workflows/resolve-todo-parallel.md +35 -0
  150. package/.agent/workflows/review-analysis.md +145 -0
  151. package/.agent/workflows/review-synthesis.md +262 -0
  152. package/.agent/workflows/review.md +64 -0
  153. package/.agent/workflows/ship.md +90 -0
  154. package/.agent/workflows/test-command.md +3 -0
  155. package/.agent/workflows/triage.md +310 -0
  156. package/.agent/workflows/work.md +157 -0
  157. package/.agent/workflows/xcode-test.md +332 -0
  158. package/LICENSE +22 -0
  159. package/README.md +49 -0
  160. package/bin/ag-cortex.js +54 -0
  161. package/lib/core.js +165 -0
  162. package/package.json +31 -0
@@ -0,0 +1,184 @@
1
+ ---
2
+ name: dhh-rails-style
3
+ description: This skill should be used when writing Ruby and Rails code in DHH's distinctive 37signals style. It applies when writing Ruby code, Rails applications, creating models, controllers, or any Ruby file. Triggers on Ruby/Rails code generation, refactoring requests, code review, or when the user mentions DHH, 37signals, Basecamp, HEY, or Campfire style. Embodies REST purity, fat models, thin controllers, Current attributes, Hotwire patterns, and the "clarity over cleverness" philosophy.
4
+ ---
5
+
6
+ <objective>
7
+ Apply 37signals/DHH Rails conventions to Ruby and Rails code. This skill provides comprehensive domain expertise extracted from analyzing production 37signals codebases (Fizzy/Campfire) and DHH's code review patterns.
8
+ </objective>
9
+
10
+ <essential_principles>
11
+ ## Core Philosophy
12
+
13
+ "The best code is the code you don't write. The second best is the code that's obviously correct."
14
+
15
+ **Vanilla Rails is plenty:**
16
+ - Rich domain models over service objects
17
+ - CRUD controllers over custom actions
18
+ - Concerns for horizontal code sharing
19
+ - Records as state instead of boolean columns
20
+ - Database-backed everything (no Redis)
21
+ - Build solutions before reaching for gems
22
+
23
+ **What they deliberately avoid:**
24
+ - devise (custom ~150-line auth instead)
25
+ - pundit/cancancan (simple role checks in models)
26
+ - sidekiq (Solid Queue uses database)
27
+ - redis (database for everything)
28
+ - view_component (partials work fine)
29
+ - GraphQL (REST with Turbo sufficient)
30
+ - factory_bot (fixtures are simpler)
31
+ - rspec (Minitest ships with Rails)
32
+ - Tailwind (native CSS with layers)
33
+
34
+ **Development Philosophy:**
35
+ - Ship, Validate, Refine - prototype-quality code to production to learn
36
+ - Fix root causes, not symptoms
37
+ - Write-time operations over read-time computations
38
+ - Database constraints over ActiveRecord validations
39
+ </essential_principles>
40
+
41
+ <intake>
42
+ What are you working on?
43
+
44
+ 1. **Controllers** - REST mapping, concerns, Turbo responses, API patterns
45
+ 2. **Models** - Concerns, state records, callbacks, scopes, POROs
46
+ 3. **Views & Frontend** - Turbo, Stimulus, CSS, partials
47
+ 4. **Architecture** - Routing, multi-tenancy, authentication, jobs, caching
48
+ 5. **Testing** - Minitest, fixtures, integration tests
49
+ 6. **Gems & Dependencies** - What to use vs avoid
50
+ 7. **Code Review** - Review code against DHH style
51
+ 8. **General Guidance** - Philosophy and conventions
52
+
53
+ **Specify a number or describe your task.**
54
+ </intake>
55
+
56
+ <routing>
57
+ | Response | Reference to Read |
58
+ |----------|-------------------|
59
+ | 1, "controller" | [controllers.md](./references/controllers.md) |
60
+ | 2, "model" | [models.md](./references/models.md) |
61
+ | 3, "view", "frontend", "turbo", "stimulus", "css" | [frontend.md](./references/frontend.md) |
62
+ | 4, "architecture", "routing", "auth", "job", "cache" | [architecture.md](./references/architecture.md) |
63
+ | 5, "test", "testing", "minitest", "fixture" | [testing.md](./references/testing.md) |
64
+ | 6, "gem", "dependency", "library" | [gems.md](./references/gems.md) |
65
+ | 7, "review" | Read all references, then review code |
66
+ | 8, general task | Read relevant references based on context |
67
+
68
+ **After reading relevant references, apply patterns to the user's code.**
69
+ </routing>
70
+
71
+ <quick_reference>
72
+ ## Naming Conventions
73
+
74
+ **Verbs:** `card.close`, `card.gild`, `board.publish` (not `set_style` methods)
75
+
76
+ **Predicates:** `card.closed?`, `card.golden?` (derived from presence of related record)
77
+
78
+ **Concerns:** Adjectives describing capability (`Closeable`, `Publishable`, `Watchable`)
79
+
80
+ **Controllers:** Nouns matching resources (`Cards::ClosuresController`)
81
+
82
+ **Scopes:**
83
+ - `chronologically`, `reverse_chronologically`, `alphabetically`, `latest`
84
+ - `preloaded` (standard eager loading name)
85
+ - `indexed_by`, `sorted_by` (parameterized)
86
+ - `active`, `unassigned` (business terms, not SQL-ish)
87
+
88
+ ## REST Mapping
89
+
90
+ Instead of custom actions, create new resources:
91
+
92
+ ```
93
+ POST /cards/:id/close → POST /cards/:id/closure
94
+ DELETE /cards/:id/close → DELETE /cards/:id/closure
95
+ POST /cards/:id/archive → POST /cards/:id/archival
96
+ ```
97
+
98
+ ## Ruby Syntax Preferences
99
+
100
+ ```ruby
101
+ # Symbol arrays with spaces inside brackets
102
+ before_action :set_message, only: %i[ show edit update destroy ]
103
+
104
+ # Private method indentation
105
+ private
106
+ def set_message
107
+ @message = Message.find(params[:id])
108
+ end
109
+
110
+ # Expression-less case for conditionals
111
+ case
112
+ when params[:before].present?
113
+ messages.page_before(params[:before])
114
+ else
115
+ messages.last_page
116
+ end
117
+
118
+ # Bang methods for fail-fast
119
+ @message = Message.create!(params)
120
+
121
+ # Ternaries for simple conditionals
122
+ @room.direct? ? @room.users : @message.mentionees
123
+ ```
124
+
125
+ ## Key Patterns
126
+
127
+ **State as Records:**
128
+ ```ruby
129
+ Card.joins(:closure) # closed cards
130
+ Card.where.missing(:closure) # open cards
131
+ ```
132
+
133
+ **Current Attributes:**
134
+ ```ruby
135
+ belongs_to :creator, default: -> { Current.user }
136
+ ```
137
+
138
+ **Authorization on Models:**
139
+ ```ruby
140
+ class User < ApplicationRecord
141
+ def can_administer?(message)
142
+ message.creator == self || admin?
143
+ end
144
+ end
145
+ ```
146
+ </quick_reference>
147
+
148
+ <reference_index>
149
+ ## Domain Knowledge
150
+
151
+ All detailed patterns in `references/`:
152
+
153
+ | File | Topics |
154
+ |------|--------|
155
+ | [controllers.md](./references/controllers.md) | REST mapping, concerns, Turbo responses, API patterns, HTTP caching |
156
+ | [models.md](./references/models.md) | Concerns, state records, callbacks, scopes, POROs, authorization, broadcasting |
157
+ | [frontend.md](./references/frontend.md) | Turbo Streams, Stimulus controllers, CSS layers, OKLCH colors, partials |
158
+ | [architecture.md](./references/architecture.md) | Routing, authentication, jobs, Current attributes, caching, database patterns |
159
+ | [testing.md](./references/testing.md) | Minitest, fixtures, unit/integration/system tests, testing patterns |
160
+ | [gems.md](./references/gems.md) | What they use vs avoid, decision framework, Gemfile examples |
161
+ </reference_index>
162
+
163
+ <success_criteria>
164
+ Code follows DHH style when:
165
+ - Controllers map to CRUD verbs on resources
166
+ - Models use concerns for horizontal behavior
167
+ - State is tracked via records, not booleans
168
+ - No unnecessary service objects or abstractions
169
+ - Database-backed solutions preferred over external services
170
+ - Tests use Minitest with fixtures
171
+ - Turbo/Stimulus for interactivity (no heavy JS frameworks)
172
+ - Native CSS with modern features (layers, OKLCH, nesting)
173
+ - Authorization logic lives on User model
174
+ - Jobs are shallow wrappers calling model methods
175
+ </success_criteria>
176
+
177
+ <credits>
178
+ Based on [The Unofficial 37signals/DHH Rails Style Guide](https://github.com/marckohlbrugge/unofficial-37signals-coding-style-guide) by [Marc Köhlbrugge](https://x.com/marckohlbrugge), generated through deep analysis of 265 pull requests from the Fizzy codebase.
179
+
180
+ **Important Disclaimers:**
181
+ - LLM-generated guide - may contain inaccuracies
182
+ - Code examples from Fizzy are licensed under the O'Saasy License
183
+ - Not affiliated with or endorsed by 37signals
184
+ </credits>