oh-my-customcode 0.30.7 → 0.30.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.
package/README.md CHANGED
@@ -21,7 +21,7 @@ Like oh-my-zsh transformed shell customization, oh-my-customcode makes personali
21
21
 
22
22
  | Feature | Description |
23
23
  |---------|-------------|
24
- | **Batteries Included** | 43 agents, 67 skills, 23 guides, 18 rules, 2 hooks, 4 contexts, ontology graph - ready to use out of the box |
24
+ | **Batteries Included** | 44 agents, 68 skills, 24 guides, 18 rules, 2 hooks, 4 contexts, ontology graph - ready to use out of the box |
25
25
  | **Sub-Agent Model** | Supports hierarchical agent orchestration with specialized roles |
26
26
  | **Dead Simple Customization** | Create a folder + markdown file = new agent or skill |
27
27
  | **Mix and Match** | Use built-in components, create your own, or combine both |
@@ -83,11 +83,11 @@ Each sub-agent runs on an optimized model for its task type:
83
83
  Claude Code selects the appropriate model and parallelizes independent tasks (up to 4 concurrent sub-agents):
84
84
 
85
85
  ```
86
- /create-agent
86
+ secretary-routing (routing skill)
87
87
  ├── mgr-creator:sonnet — agent scaffolding
88
88
  └── mgr-supplier:haiku — dependency check
89
89
 
90
- /code-review
90
+ dev-lead-routing (routing skill)
91
91
  ├── lang-golang-expert:sonnet — Go implementation
92
92
  ├── lang-python-expert:sonnet — Python implementation
93
93
  └── qa-engineer:sonnet — test generation
@@ -160,14 +160,14 @@ All commands are invoked inside the Claude Code conversation.
160
160
 
161
161
  ## What's Included
162
162
 
163
- ### Agents (43)
163
+ ### Agents (44)
164
164
 
165
165
  | Category | Count | Agents |
166
166
  |----------|-------|--------|
167
167
  | **Managers** | 6 | mgr-creator, mgr-updater, mgr-supplier, mgr-gitnerd, mgr-sauron, mgr-claude-code-bible |
168
168
  | **System** | 2 | sys-memory-keeper, sys-naggy |
169
169
  | **Languages** | 6 | lang-golang-expert, lang-python-expert, lang-rust-expert, lang-kotlin-expert, lang-typescript-expert, lang-java21-expert |
170
- | **Frontend** | 3 | fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent |
170
+ | **Frontend** | 4 | fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent, fe-flutter-agent |
171
171
  | **Backend** | 6 | be-fastapi-expert, be-springboot-expert, be-go-backend-expert, be-express-expert, be-nestjs-expert, be-django-expert |
172
172
  | **Tooling** | 3 | tool-npm-expert, tool-optimizer, tool-bun-expert |
173
173
  | **Data Engineering** | 6 | de-airflow-expert, de-dbt-expert, de-spark-expert, de-kafka-expert, de-snowflake-expert, de-pipeline-expert |
@@ -176,14 +176,14 @@ All commands are invoked inside the Claude Code conversation.
176
176
  | **Infrastructure** | 2 | infra-docker-expert, infra-aws-expert |
177
177
  | **QA** | 3 | qa-planner, qa-writer, qa-engineer |
178
178
  | **Security** | 1 | sec-codeql-expert |
179
- | **Total** | **43** | |
179
+ | **Total** | **44** | |
180
180
 
181
- ### Skills (67)
181
+ ### Skills (68)
182
182
 
183
183
  | Category | Count | Skills |
184
184
  |----------|-------|--------|
185
185
  | **Routing** | 4 | secretary-routing, dev-lead-routing, de-lead-routing, qa-lead-routing |
186
- | **Best Practices** | 18 | go-best-practices, python-best-practices, typescript-best-practices, kotlin-best-practices, rust-best-practices, react-best-practices, fastapi-best-practices, springboot-best-practices, go-backend-best-practices, docker-best-practices, aws-best-practices, postgres-best-practices, supabase-postgres-best-practices, redis-best-practices, airflow-best-practices, dbt-best-practices, kafka-best-practices, snowflake-best-practices |
186
+ | **Best Practices** | 20 | go-best-practices, python-best-practices, typescript-best-practices, kotlin-best-practices, rust-best-practices, react-best-practices, fastapi-best-practices, springboot-best-practices, go-backend-best-practices, django-best-practices, docker-best-practices, aws-best-practices, postgres-best-practices, supabase-postgres-best-practices, redis-best-practices, airflow-best-practices, dbt-best-practices, kafka-best-practices, snowflake-best-practices, flutter-best-practices |
187
187
  | **Development** | 6 | dev-review, dev-refactor, create-agent, intent-detection, web-design-guidelines, analysis |
188
188
  | **Data Engineering** | 2 | spark-best-practices, pipeline-architecture-patterns |
189
189
  | **Optimization** | 3 | optimize-analyze, optimize-bundle, optimize-report |
@@ -197,14 +197,14 @@ All commands are invoked inside the Claude Code conversation.
197
197
  | **Deploy** | 2 | vercel-deploy, codex-exec |
198
198
  | **External** | 1 | skills-sh-search |
199
199
 
200
- ### Guides (23)
200
+ ### Guides (24)
201
201
 
202
202
  Comprehensive reference documentation covering:
203
203
  - Agent creation and management
204
204
  - Skill development
205
205
  - Pipeline workflows
206
- - Best practices and patterns
207
206
  - Sub-agent orchestration
207
+ - Best practices and patterns
208
208
  - Data engineering workflows
209
209
  - Database optimization
210
210
 
@@ -273,12 +273,12 @@ After `omcustom init`:
273
273
  your-project/
274
274
  ├── CLAUDE.md # Entry point for Claude
275
275
  ├── .claude/
276
- │ ├── agents/ # Agent definitions (43 flat .md files)
276
+ │ ├── agents/ # Agent definitions (44 flat .md files)
277
277
  │ │ ├── lang-golang-expert.md
278
278
  │ │ ├── be-fastapi-expert.md
279
279
  │ │ ├── mgr-creator.md
280
280
  │ │ └── ...
281
- │ ├── skills/ # Skill modules (67 directories, each with SKILL.md)
281
+ │ ├── skills/ # Skill modules (68 directories, each with SKILL.md)
282
282
  │ │ ├── go-best-practices/
283
283
  │ │ ├── react-best-practices/
284
284
  │ │ ├── secretary-routing/
@@ -292,9 +292,11 @@ your-project/
292
292
  │ ├── rules/ # Behavior rules (18 total)
293
293
  │ ├── hooks/ # Event hooks (2 total)
294
294
  │ └── contexts/ # Context files (4 total)
295
- └── guides/ # Reference docs (23 total)
295
+ └── guides/ # Reference docs (24 total)
296
296
  ```
297
297
 
298
+ **Note**: In the official Claude Code format, there is no command registry — slash commands and natural language agent references are used.
299
+
298
300
  ---
299
301
 
300
302
  ## Development
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "oh-my-customcode",
3
- "version": "0.30.7",
3
+ "version": "0.30.9",
4
4
  "description": "Batteries-included agent harness for Claude Code",
5
5
  "type": "module",
6
6
  "bin": {
@@ -0,0 +1,46 @@
1
+ ---
2
+ name: fe-flutter-agent
3
+ description: Use for Flutter/Dart cross-platform app development, widget composition, state management (Riverpod/BLoC), and performance optimization
4
+ model: sonnet
5
+ memory: project
6
+ effort: medium
7
+ skills:
8
+ - flutter-best-practices
9
+ tools:
10
+ - Read
11
+ - Write
12
+ - Edit
13
+ - Grep
14
+ - Glob
15
+ - Bash
16
+ ---
17
+
18
+ You are an expert Flutter developer following official documentation and Dart best practices.
19
+
20
+ ## Capabilities
21
+
22
+ - Widget composition (StatelessWidget, StatefulWidget, InheritedWidget)
23
+ - State management: Riverpod 3.0 (default), BLoC 9.0 (enterprise)
24
+ - Dart 3.x null safety, sealed classes, pattern matching, records
25
+ - go_router declarative navigation with deep linking
26
+ - freezed immutable data models with code generation
27
+ - Performance: const constructors, RepaintBoundary, Isolate
28
+ - Platform channels for native iOS/Android integration
29
+ - Security: flutter_secure_storage, obfuscation, certificate pinning
30
+
31
+ ## Default Stack
32
+
33
+ - **State**: Riverpod 3.0
34
+ - **Navigation**: go_router
35
+ - **Models**: freezed + json_serializable
36
+ - **HTTP**: dio
37
+ - **Linting**: very_good_analysis
38
+ - **Testing**: flutter_test + mocktail
39
+
40
+ ## References
41
+
42
+ - https://docs.flutter.dev/
43
+ - https://dart.dev/effective-dart
44
+ - https://riverpod.dev/
45
+ - https://bloclibrary.dev/
46
+ - https://pub.dev/packages/go_router
@@ -12,7 +12,7 @@ classes:
12
12
  agents: [be-fastapi-expert, be-springboot-expert, be-go-backend-expert, be-express-expert, be-nestjs-expert]
13
13
  description: "Backend framework specialists"
14
14
  FrontendExpert:
15
- agents: [fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent]
15
+ agents: [fe-vercel-agent, fe-vuejs-agent, fe-svelte-agent, fe-flutter-agent]
16
16
  description: "Frontend framework specialists"
17
17
  DataEngineer:
18
18
  agents: [de-airflow-expert, de-dbt-expert, de-spark-expert, de-kafka-expert, de-snowflake-expert, de-pipeline-expert]
@@ -209,6 +209,18 @@ agents:
209
209
  keywords: [svelte, sveltekit, reactive, compiler, stores, ssr, file-routing]
210
210
  file_patterns: ["*.svelte", "svelte.config.js", "+page.svelte", "+layout.svelte"]
211
211
 
212
+ fe-flutter-agent:
213
+ class: FrontendExpert
214
+ description: "Use for Flutter/Dart cross-platform development, widget composition, state management (Riverpod, BLoC), and mobile/desktop app optimization"
215
+ model: sonnet
216
+ memory: project
217
+ effort: medium
218
+ skills: [flutter-best-practices]
219
+ tools: [Read, Write, Edit, Grep, Glob, Bash]
220
+ summary: "Flutter expert for cross-platform mobile/desktop apps with Riverpod and BLoC state management"
221
+ keywords: [flutter, dart, riverpod, bloc, widget, cross-platform, mobile]
222
+ file_patterns: ["*.dart", "pubspec.yaml", "pubspec.lock"]
223
+
212
224
  de-airflow-expert:
213
225
  class: DataEngineer
214
226
  description: "Expert Apache Airflow developer for DAG authoring, testing, and debugging. Use for DAG files (*.py in dags/), airflow.cfg, Airflow-related keywords, scheduling patterns, and pipeline orchestration."
@@ -455,7 +467,7 @@ agents:
455
467
  model: sonnet
456
468
  memory: project
457
469
  effort: medium
458
- skills: [update-external]
470
+ skills: [update-external, update-docs]
459
471
  tools: [Read, Write, Edit, Grep, Glob, Bash]
460
472
  summary: "External source synchronization for agents, skills, and guides"
461
473
  keywords: [update, external, upstream, synchronization, version, metadata]
@@ -16,6 +16,7 @@
16
16
  "fe-vercel-agent": ["react-best-practices", "web-design-guidelines", "vercel-deploy"],
17
17
  "fe-vuejs-agent": [],
18
18
  "fe-svelte-agent": [],
19
+ "fe-flutter-agent": ["flutter-best-practices"],
19
20
  "de-airflow-expert": ["airflow-best-practices"],
20
21
  "de-dbt-expert": ["dbt-best-practices"],
21
22
  "de-spark-expert": ["spark-best-practices"],
@@ -56,6 +57,7 @@
56
57
  "react-best-practices": ["fe-vercel-agent"],
57
58
  "web-design-guidelines": ["fe-vercel-agent"],
58
59
  "vercel-deploy": ["fe-vercel-agent"],
60
+ "flutter-best-practices": ["fe-flutter-agent"],
59
61
  "airflow-best-practices": ["de-airflow-expert"],
60
62
  "dbt-best-practices": ["de-dbt-expert"],
61
63
  "spark-best-practices": ["de-spark-expert"],
@@ -16,6 +16,7 @@
16
16
  "fe-vercel-agent": { "type": "Agent", "class": "FrontendExpert" },
17
17
  "fe-vuejs-agent": { "type": "Agent", "class": "FrontendExpert" },
18
18
  "fe-svelte-agent": { "type": "Agent", "class": "FrontendExpert" },
19
+ "fe-flutter-agent": { "type": "Agent", "class": "FrontendExpert" },
19
20
  "de-airflow-expert": { "type": "Agent", "class": "DataEngineer" },
20
21
  "de-dbt-expert": { "type": "Agent", "class": "DataEngineer" },
21
22
  "de-spark-expert": { "type": "Agent", "class": "DataEngineer" },
@@ -52,6 +53,7 @@
52
53
  "springboot-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
53
54
  "go-backend-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
54
55
  "react-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
56
+ "flutter-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
55
57
  "airflow-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
56
58
  "dbt-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
57
59
  "spark-best-practices": { "type": "Skill", "class": "BestPracticeSkill" },
@@ -175,6 +177,8 @@
175
177
  { "source": "dev-lead-routing", "target": "fe-vercel-agent", "relation": "routes_to" },
176
178
  { "source": "dev-lead-routing", "target": "fe-vuejs-agent", "relation": "routes_to" },
177
179
  { "source": "dev-lead-routing", "target": "fe-svelte-agent", "relation": "routes_to" },
180
+ { "source": "dev-lead-routing", "target": "fe-flutter-agent", "relation": "routes_to" },
181
+ { "source": "fe-flutter-agent", "target": "flutter-best-practices", "relation": "requires" },
178
182
  { "source": "dev-lead-routing", "target": "be-fastapi-expert", "relation": "routes_to" },
179
183
  { "source": "dev-lead-routing", "target": "be-springboot-expert", "relation": "routes_to" },
180
184
  { "source": "dev-lead-routing", "target": "be-go-backend-expert", "relation": "routes_to" },
@@ -257,6 +261,10 @@
257
261
  "requires": [],
258
262
  "routed_by": ["dev-lead-routing"]
259
263
  },
264
+ "fe-flutter-agent": {
265
+ "requires": ["flutter-best-practices"],
266
+ "routed_by": ["dev-lead-routing"]
267
+ },
260
268
  "de-airflow-expert": {
261
269
  "requires": ["airflow-best-practices"],
262
270
  "routed_by": ["de-lead-routing"]
@@ -401,6 +409,10 @@
401
409
  "required_by": ["fe-vercel-agent"],
402
410
  "depends_on": []
403
411
  },
412
+ "flutter-best-practices": {
413
+ "required_by": ["fe-flutter-agent"],
414
+ "depends_on": []
415
+ },
404
416
  "web-design-guidelines": {
405
417
  "required_by": ["fe-vercel-agent"],
406
418
  "depends_on": []
@@ -518,7 +530,7 @@
518
530
  "depends_on": []
519
531
  },
520
532
  "dev-lead-routing": {
521
- "routes_to": ["lang-golang-expert", "lang-python-expert", "lang-rust-expert", "lang-kotlin-expert", "lang-typescript-expert", "lang-java21-expert", "fe-vercel-agent", "fe-vuejs-agent", "fe-svelte-agent", "be-fastapi-expert", "be-springboot-expert", "be-go-backend-expert", "be-nestjs-expert", "be-express-expert", "tool-npm-expert", "tool-optimizer", "tool-bun-expert", "db-supabase-expert", "db-postgres-expert", "db-redis-expert", "arch-documenter", "arch-speckit-agent", "infra-docker-expert", "infra-aws-expert"],
533
+ "routes_to": ["lang-golang-expert", "lang-python-expert", "lang-rust-expert", "lang-kotlin-expert", "lang-typescript-expert", "lang-java21-expert", "fe-vercel-agent", "fe-vuejs-agent", "fe-svelte-agent", "fe-flutter-agent", "be-fastapi-expert", "be-springboot-expert", "be-go-backend-expert", "be-nestjs-expert", "be-express-expert", "tool-npm-expert", "tool-optimizer", "tool-bun-expert", "db-supabase-expert", "db-postgres-expert", "db-redis-expert", "arch-documenter", "arch-speckit-agent", "infra-docker-expert", "infra-aws-expert"],
522
534
  "depends_on": []
523
535
  },
524
536
  "de-lead-routing": {
@@ -26,6 +26,7 @@
26
26
  "fe-vercel-agent",
27
27
  "fe-vuejs-agent",
28
28
  "fe-svelte-agent",
29
+ "fe-flutter-agent",
29
30
  "be-fastapi-expert",
30
31
  "be-springboot-expert",
31
32
  "be-go-backend-expert",
@@ -82,6 +83,7 @@
82
83
  "fe-vercel-agent": "dev-lead-routing",
83
84
  "fe-vuejs-agent": "dev-lead-routing",
84
85
  "fe-svelte-agent": "dev-lead-routing",
86
+ "fe-flutter-agent": "dev-lead-routing",
85
87
  "be-fastapi-expert": "dev-lead-routing",
86
88
  "be-springboot-expert": "dev-lead-routing",
87
89
  "be-go-backend-expert": "dev-lead-routing",
@@ -15,6 +15,7 @@
15
15
  "docker-best-practices": [],
16
16
  "fastapi-best-practices": [],
17
17
  "fix-refs": [],
18
+ "flutter-best-practices": [],
18
19
  "go-backend-best-practices": [],
19
20
  "go-best-practices": [],
20
21
  "help": [],