@phuc1403/musketeer 0.8.0 → 0.10.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.
- package/INSTALLATION.md +52 -52
- package/README.md +49 -49
- package/bin/musketeer.js +168 -168
- package/manifest.json +333 -301
- package/package.json +48 -48
- package/src/dotnet-scaffold-copier.js +79 -79
- package/src/provisioner/detect.js +93 -93
- package/src/self-update.js +77 -77
- package/template/.claude/agents/code-reviewer.md +182 -166
- package/template/.claude/agents/git-manager.md +18 -18
- package/template/.claude/agents/hallmark-auditor.md +78 -78
- package/template/.claude/agents/researcher.md +33 -33
- package/template/.claude/hooks/block-unsafe-adr-title.cjs +85 -85
- package/template/.claude/hooks/git-skill-reminder.cjs +53 -0
- package/template/.claude/hooks/init-adr-dir.cjs +173 -173
- package/template/.claude/hooks/inject-adr-flags.cjs +94 -94
- package/template/.claude/hooks/lib/adr/command-scan.cjs +115 -115
- package/template/.claude/hooks/lib/characteristics/checker.cjs +357 -357
- package/template/.claude/hooks/lib/colors.cjs +180 -122
- package/template/.claude/hooks/lib/git-info-cache.cjs +191 -191
- package/template/.claude/hooks/lib/transcript-parser.cjs +300 -277
- package/template/.claude/hooks/sync-adr-toc.cjs +146 -146
- package/template/.claude/hooks/{usage-context-awareness.cjs → usage-quota-cache-refresh.cjs} +166 -166
- package/template/.claude/hooks/validate-characteristics-hook.cjs +66 -66
- package/template/.claude/hooks/validate-cml-hook.js +145 -145
- package/template/.claude/skills/adr-writer/SKILL.md +48 -48
- package/template/.claude/skills/adr-writer/references/adr-example.md +35 -35
- package/template/.claude/skills/architecture-characteristic-writer/SKILL.md +215 -215
- package/template/.claude/skills/architecture-characteristic-writer/assets/worksheet-template.md +29 -29
- package/template/.claude/skills/architecture-characteristic-writer/references/characteristics-catalog.md +40 -40
- package/template/.claude/skills/architecture-characteristic-writer/scripts/ranking-table.cjs +171 -171
- package/template/.claude/skills/code-review/SKILL.md +201 -54
- package/template/.claude/skills/code-review/references/checklist-workflow.md +96 -0
- package/template/.claude/skills/code-review/references/checklists/api.md +52 -52
- package/template/.claude/skills/code-review/references/checklists/base.md +100 -100
- package/template/.claude/skills/code-review/references/checklists/web-app.md +54 -54
- package/template/.claude/skills/code-review/references/code-review-reception.md +113 -0
- package/template/.claude/skills/code-review/references/codebase-scan-workflow.md +30 -0
- package/template/.claude/skills/code-review/references/edge-case-scouting.md +119 -0
- package/template/.claude/skills/code-review/references/input-mode-resolution.md +135 -0
- package/template/.claude/skills/code-review/references/parallel-review-workflow.md +76 -0
- package/template/.claude/skills/code-review/references/requesting-code-review.md +116 -0
- package/template/.claude/skills/code-review/references/spec-compliance-review.md +43 -0
- package/template/.claude/skills/code-review/references/task-management-reviews.md +140 -0
- package/template/.claude/skills/code-review/references/verification-before-completion.md +139 -0
- package/template/.claude/skills/context-map/SKILL.md +80 -80
- package/template/.claude/skills/context-map/example.cml +106 -106
- package/template/.claude/skills/context-map/reference/Bounded Context/Bounded Context.md +40 -40
- package/template/.claude/skills/context-map/reference/Bounded Context/businessModel.md +5 -5
- package/template/.claude/skills/context-map/reference/Bounded Context/domainVisionStatement.md +2 -2
- package/template/.claude/skills/context-map/reference/Bounded Context/evolution.md +5 -5
- package/template/.claude/skills/context-map/reference/Bounded Context/implementationTechnology.md +1 -1
- package/template/.claude/skills/context-map/reference/Bounded Context/implements.md +1 -1
- package/template/.claude/skills/context-map/reference/Bounded Context/knowledgeLevel.md +4 -4
- package/template/.claude/skills/context-map/reference/Bounded Context/realizes.md +9 -9
- package/template/.claude/skills/context-map/reference/Bounded Context/refines.md +10 -10
- package/template/.claude/skills/context-map/reference/Bounded Context/responsibilities.md +26 -26
- package/template/.claude/skills/context-map/reference/Bounded Context/type.md +23 -23
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Anticorruption Layer.md +5 -5
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Bounded Context Relationship.md +12 -12
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Conformist.md +5 -5
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Customer-Supplier (C-S).md +22 -22
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Open Host Service.md +4 -4
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Partnership (P).md +13 -13
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Published Language.md +4 -4
- package/template/.claude/skills/context-map/reference/Bounded Context Relationship/Shared Kernel (SK).md +12 -12
- package/template/.claude/skills/context-map/reference/Context Map.md +62 -62
- package/template/.claude/skills/context-map/reference/Domain/Domain.md +30 -30
- package/template/.claude/skills/context-map/reference/Domain/supports.md +33 -33
- package/template/.claude/skills/context-map/reference/Domain/type.md +3 -3
- package/template/.claude/skills/context-map/reference/Semantic Rules.md +32 -32
- package/template/.claude/skills/git/SKILL.md +131 -115
- package/template/.claude/skills/git/references/branch-management.md +88 -88
- package/template/.claude/skills/git/references/commit-standards.md +46 -46
- package/template/.claude/skills/git/references/context-efficiency.md +54 -0
- package/template/.claude/skills/git/references/gh-cli-guide.md +109 -109
- package/template/.claude/skills/git/references/safety-protocols.md +69 -69
- package/template/.claude/skills/git/references/workflow-commit.md +58 -58
- package/template/.claude/skills/git/references/workflow-merge-pr.md +136 -0
- package/template/.claude/skills/git/references/workflow-merge.md +48 -48
- package/template/.claude/skills/git/references/workflow-pr.md +58 -58
- package/template/.claude/skills/git/references/workflow-push.md +52 -52
- package/template/.claude/skills/hallmark/SKILL.md +552 -552
- package/template/.claude/skills/hallmark/references/anti-patterns.md +412 -412
- package/template/.claude/skills/hallmark/references/assets.md +406 -406
- package/template/.claude/skills/hallmark/references/color.md +95 -95
- package/template/.claude/skills/hallmark/references/component-cookbook.md +256 -256
- package/template/.claude/skills/hallmark/references/components/c1-outlined-chip.md +12 -12
- package/template/.claude/skills/hallmark/references/components/c2-inline-form-as-cta.md +16 -16
- package/template/.claude/skills/hallmark/references/components/c3-typographic-link.md +8 -8
- package/template/.claude/skills/hallmark/references/components/c4-sticky-bottom-bar.md +16 -16
- package/template/.claude/skills/hallmark/references/components/f1-bento-grid.md +20 -20
- package/template/.claude/skills/hallmark/references/components/f2-sticky-scroll-stack.md +20 -20
- package/template/.claude/skills/hallmark/references/components/f3-tabular-spec-sheet.md +11 -11
- package/template/.claude/skills/hallmark/references/components/f4-step-sequence.md +11 -11
- package/template/.claude/skills/hallmark/references/components/f5-annotated-screenshot.md +11 -11
- package/template/.claude/skills/hallmark/references/components/f6-product-card-grid.md +41 -41
- package/template/.claude/skills/hallmark/references/components/ft1-mast-headed.md +13 -13
- package/template/.claude/skills/hallmark/references/components/ft2-inline-rule-single-line.md +10 -10
- package/template/.claude/skills/hallmark/references/components/ft3-index-style-category-list.md +12 -12
- package/template/.claude/skills/hallmark/references/components/ft4-dense-typographic.md +10 -10
- package/template/.claude/skills/hallmark/references/components/ft5-statement.md +21 -21
- package/template/.claude/skills/hallmark/references/components/ft6-letter-close.md +19 -19
- package/template/.claude/skills/hallmark/references/components/ft7-newsletter-first.md +27 -27
- package/template/.claude/skills/hallmark/references/components/ft8-marquee-scroll.md +25 -25
- package/template/.claude/skills/hallmark/references/components/h1-marquee.md +15 -15
- package/template/.claude/skills/hallmark/references/components/h2-split-diptych.md +15 -15
- package/template/.claude/skills/hallmark/references/components/h3-quote-led.md +11 -11
- package/template/.claude/skills/hallmark/references/components/h4-stat-led.md +14 -14
- package/template/.claude/skills/hallmark/references/components/h5-letter-hero.md +11 -11
- package/template/.claude/skills/hallmark/references/components/h6-photographic-fold.md +16 -16
- package/template/.claude/skills/hallmark/references/components/h7-demo-video-clipped-by-viewport-edge.md +27 -27
- package/template/.claude/skills/hallmark/references/components/h8-mockup-split-browser-framed.md +23 -23
- package/template/.claude/skills/hallmark/references/components/h9-custom-illustration-centerpiece.md +27 -27
- package/template/.claude/skills/hallmark/references/components/n1-wordmark-2-links.md +12 -12
- package/template/.claude/skills/hallmark/references/components/n10-floating-on-scroll-morph.md +19 -19
- package/template/.claude/skills/hallmark/references/components/n2-floating-chip.md +14 -14
- package/template/.claude/skills/hallmark/references/components/n3-side-rail.md +14 -14
- package/template/.claude/skills/hallmark/references/components/n4-hidden-behind-k.md +9 -9
- package/template/.claude/skills/hallmark/references/components/n5-floating-pill.md +28 -28
- package/template/.claude/skills/hallmark/references/components/n6-newspaper-masthead.md +24 -24
- package/template/.claude/skills/hallmark/references/components/n7-brutal-slab.md +22 -22
- package/template/.claude/skills/hallmark/references/components/n8-terminal-command.md +21 -21
- package/template/.claude/skills/hallmark/references/components/n9-edge-aligned-minimal.md +17 -17
- package/template/.claude/skills/hallmark/references/components/s1-left-margin-numbered.md +15 -15
- package/template/.claude/skills/hallmark/references/components/s2-hanging.md +13 -13
- package/template/.claude/skills/hallmark/references/components/s3-sticky-pinned.md +19 -19
- package/template/.claude/skills/hallmark/references/components/s4-inline-no-break.md +11 -11
- package/template/.claude/skills/hallmark/references/components/s5-bottom-anchored.md +13 -13
- package/template/.claude/skills/hallmark/references/components/t1-pull-quote-with-marginalia.md +12 -12
- package/template/.claude/skills/hallmark/references/components/t2-logo-wall-hairline.md +19 -19
- package/template/.claude/skills/hallmark/references/components/t3-single-huge-quote.md +11 -11
- package/template/.claude/skills/hallmark/references/components/t4-numbered-stat-strip.md +14 -14
- package/template/.claude/skills/hallmark/references/contract.md +24 -24
- package/template/.claude/skills/hallmark/references/copy.md +182 -182
- package/template/.claude/skills/hallmark/references/custom-craft.md +626 -626
- package/template/.claude/skills/hallmark/references/custom-theme.md +329 -329
- package/template/.claude/skills/hallmark/references/design-md.md +116 -116
- package/template/.claude/skills/hallmark/references/export-formats.md +328 -328
- package/template/.claude/skills/hallmark/references/floating-nav.md +89 -89
- package/template/.claude/skills/hallmark/references/genres/atmospheric.md +65 -65
- package/template/.claude/skills/hallmark/references/genres/editorial.md +70 -70
- package/template/.claude/skills/hallmark/references/genres/modern-minimal.md +67 -67
- package/template/.claude/skills/hallmark/references/genres/playful.md +65 -65
- package/template/.claude/skills/hallmark/references/hero-enrichment.md +474 -474
- package/template/.claude/skills/hallmark/references/imagery-kit.md +170 -170
- package/template/.claude/skills/hallmark/references/interaction-and-states.md +207 -207
- package/template/.claude/skills/hallmark/references/layout-and-space.md +111 -111
- package/template/.claude/skills/hallmark/references/macrostructures/01-bento-grid.md +35 -35
- package/template/.claude/skills/hallmark/references/macrostructures/02-long-document.md +34 -34
- package/template/.claude/skills/hallmark/references/macrostructures/03-marquee-hero.md +31 -31
- package/template/.claude/skills/hallmark/references/macrostructures/04-stat-led.md +32 -32
- package/template/.claude/skills/hallmark/references/macrostructures/05-workbench.md +32 -32
- package/template/.claude/skills/hallmark/references/macrostructures/06-conversational-faq.md +33 -33
- package/template/.claude/skills/hallmark/references/macrostructures/07-manifesto.md +32 -32
- package/template/.claude/skills/hallmark/references/macrostructures/08-photographic.md +34 -34
- package/template/.claude/skills/hallmark/references/macrostructures/09-quote-led.md +32 -32
- package/template/.claude/skills/hallmark/references/macrostructures/10-specimen.md +32 -32
- package/template/.claude/skills/hallmark/references/macrostructures/11-catalogue.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/12-letter.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/13-index-first.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/14-narrative-workflow.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/15-split-studio.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/16-feature-stack.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/17-type-specimen.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/18-portfolio-grid.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/19-map-diagram.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/20-ecosystem-index.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures/21-component-playground.md +23 -23
- package/template/.claude/skills/hallmark/references/macrostructures.md +89 -89
- package/template/.claude/skills/hallmark/references/microinteractions.md +260 -260
- package/template/.claude/skills/hallmark/references/motion.md +109 -109
- package/template/.claude/skills/hallmark/references/preview-examples.md +49 -49
- package/template/.claude/skills/hallmark/references/responsive.md +138 -138
- package/template/.claude/skills/hallmark/references/slop-test.md +205 -205
- package/template/.claude/skills/hallmark/references/structure.md +164 -164
- package/template/.claude/skills/hallmark/references/study.md +511 -511
- package/template/.claude/skills/hallmark/references/typography.md +243 -243
- package/template/.claude/skills/hallmark/references/verbs/audit.md +25 -25
- package/template/.claude/skills/hallmark/references/verbs/redesign.md +269 -269
- package/template/.claude/skills/hallmark-loop/SKILL.md +105 -105
- package/template/.claude/skills/hallmark-loop/references/auditor-call.md +60 -60
- package/template/.claude/skills/hallmark-loop/references/capture.md +78 -78
- package/template/.claude/skills/hallmark-loop/references/loop-control.md +79 -79
- package/template/.claude/skills/handoff/SKILL.md +15 -15
- package/template/.claude/skills/knowledge-crunching/SKILL.md +94 -94
- package/template/.claude/skills/research/SKILL.md +69 -69
- package/template/.claude/skills/skill-creator/LICENSE.txt +201 -201
- package/template/.claude/skills/skill-creator/SKILL.md +154 -149
- package/template/.claude/skills/skill-creator/agents/analyzer.md +274 -274
- package/template/.claude/skills/skill-creator/agents/comparator.md +202 -202
- package/template/.claude/skills/skill-creator/agents/grader.md +223 -223
- package/template/.claude/skills/skill-creator/assets/eval_review.html +146 -146
- package/template/.claude/skills/skill-creator/eval-viewer/generate_review.py +471 -471
- package/template/.claude/skills/skill-creator/eval-viewer/viewer.html +1325 -1325
- package/template/.claude/skills/skill-creator/references/benchmark-optimization-guide.md +86 -86
- package/template/.claude/skills/skill-creator/references/distribution-guide.md +79 -79
- package/template/.claude/skills/skill-creator/references/eval-infrastructure-guide.md +129 -129
- package/template/.claude/skills/skill-creator/references/eval-schemas.md +121 -121
- package/template/.claude/skills/skill-creator/references/mcp-skills-integration.md +71 -71
- package/template/.claude/skills/skill-creator/references/metadata-quality-criteria.md +94 -94
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-hosting.md +104 -104
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-overview.md +89 -89
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-schema.md +93 -93
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-sources.md +103 -103
- package/template/.claude/skills/skill-creator/references/plugin-marketplace-troubleshooting.md +76 -76
- package/template/.claude/skills/skill-creator/references/script-quality-criteria.md +106 -106
- package/template/.claude/skills/skill-creator/references/skill-anatomy-and-requirements.md +77 -77
- package/template/.claude/skills/skill-creator/references/skill-creation-workflow.md +152 -151
- package/template/.claude/skills/skill-creator/references/skill-design-patterns.md +75 -75
- package/template/.claude/skills/skill-creator/references/skillmark-benchmark-criteria.md +102 -102
- package/template/.claude/skills/skill-creator/references/structure-organization-criteria.md +114 -114
- package/template/.claude/skills/skill-creator/references/testing-and-iteration.md +78 -78
- package/template/.claude/skills/skill-creator/references/token-efficiency-criteria.md +74 -74
- package/template/.claude/skills/skill-creator/references/troubleshooting-guide.md +81 -81
- package/template/.claude/skills/skill-creator/references/validation-checklist.md +83 -83
- package/template/.claude/skills/skill-creator/references/writing-effective-instructions.md +88 -88
- package/template/.claude/skills/skill-creator/references/yaml-frontmatter-reference.md +92 -92
- package/template/.claude/skills/skill-creator/scripts/aggregate_benchmark.py +401 -401
- package/template/.claude/skills/skill-creator/scripts/encoding_utils.py +36 -36
- package/template/.claude/skills/skill-creator/scripts/generate_report.py +326 -326
- package/template/.claude/skills/skill-creator/scripts/improve_description.py +248 -248
- package/template/.claude/skills/skill-creator/scripts/init_skill.py +360 -360
- package/template/.claude/skills/skill-creator/scripts/package_skill.py +143 -143
- package/template/.claude/skills/skill-creator/scripts/quick_validate.py +110 -110
- package/template/.claude/skills/skill-creator/scripts/run_eval.py +310 -310
- package/template/.claude/skills/skill-creator/scripts/run_loop.py +332 -332
- package/template/.claude/skills/skill-creator/scripts/utils.py +47 -47
- package/template/.claude/skills/tdd/SKILL.md +142 -142
- package/template/.claude/skills/tdd/deep-modules.md +15 -15
- package/template/.claude/skills/tdd/interface-design.md +31 -31
- package/template/.claude/skills/tdd/mocking.md +59 -59
- package/template/.claude/skills/tdd/refactoring.md +10 -10
- package/template/.claude/skills/tdd/tests.md +61 -61
- package/template/.claude/statusline.cjs +0 -0
- package/template/.claude/skills/code-review/references/adversarial-review.md +0 -223
|
@@ -1,33 +1,33 @@
|
|
|
1
|
-
The following semantic rules are either implicitly given by the domain model on which the language is based (see above), or enforced by corresponding semantic checkers.
|
|
2
|
-
|
|
3
|
-
Note that the model and the semantic rules express how we understand the DDD patterns and how they can be combined, and how we applied DDD on projects ourselves. Rationale: the literature is somewhat ambiguous.
|
|
4
|
-
|
|
5
|
-
# 1: Permitted Upstream Roles
|
|
6
|
-
The patterns OHS and PL can only be implemented by the upstream context in an upstream-downstream relationship. The upstream context always provides and exposes a certain functionality. The downstream context uses and consumes this services and does not expose parts of his/her own domain model. If this was the case and the upstream used this functionality, the definition that the upstream is independent of the downstream would be contradicted.
|
|
7
|
-
|
|
8
|
-
# 2: Permitted Downstream Roles
|
|
9
|
-
The patterns ACL and CF can only be applied by the downstream context in an upstream-downstream relationship. These patterns solve a downstream problem, namely how to deal with a dependency to another context. It is always the downstream context that has to integrate the upstream model.
|
|
10
|
-
|
|
11
|
-
# 3: Protect or Conform
|
|
12
|
-
The patterns ACL and CF cannot be applied jointly, but provide alternatives. The downstream either conforms (CF) or protects itself with an ACL.
|
|
13
|
-
|
|
14
|
-
# 4: Integrity of Symmetric Relationships
|
|
15
|
-
The patterns OHS, PL, ACL and CF are not applicable in symmetric relationships (Partnership and Shared Kernel), since doing so would lead to contradictions with the pattern definitions. In a Shared Kernel relationship, the two contexts communicate over shared code such as a library. Both contexts manage the shared code together, which clearly contradicts with the mentioned four pattern definitions. An OHS indicates a directed provider/consumer behavior which is not the case here. There is no need for a common inter-context language (PL), since the two contexts simply share the same model. An ACL is not required either since the two participants share the model anyway. And neither context has to conform to the model of the other since it is one shared model. In a Partnership relationship both contexts depend on each other, which means they can only succeed or fail together.
|
|
16
|
-
|
|
17
|
-
# 5: Customer vs. Conformist
|
|
18
|
-
The CF pattern is not applicable within a customer-supplier relationship. In a customer-supplier relationship the customer has influence on the supplier and can at least negotiate regarding priorities of the requirements and the implementation. A conformist in contrast has no influence and simply decides to conform to what the upstream provides.
|
|
19
|
-
|
|
20
|
-
# 6: Generic vs. Custom Service
|
|
21
|
-
The OHS pattern is not applicable within a customer-supplier relationship. Whereas the customer-supplier pattern implies that the involved teams work closely together, meaning that the upstream respects the downstreams requirements in his planning sessions, the OHS pattern indicates that the upstream team decides to implement one API in a one for all approach. This is contradictory since it is unlikely that such an upstream implementing an OHS is able to have a close customer-supplier relationship with all its downstreams. From personal practical experience a customer-supplier relationship leads to individual requirements of single customers. As soon as the supplier implements a customer-specific API feature it is by pattern definition no longer an OHS.
|
|
22
|
-
|
|
23
|
-
# 7: Protect or Cooperate
|
|
24
|
-
The ACL pattern should not be used within a customer-supplier relationship. Changes of the supplier should be in-sync with the needs of the customer. Protection should be unnecessary. Note that this is only a soft rule since the combination is possible but not common. Our tool issues a warning rather than an error message if it detects a violation of the rule.
|
|
25
|
-
|
|
26
|
-
# 8: ORGANIZATIONAL Context Maps
|
|
27
|
-
A context map of the type ORGANIZATIONAL (team map), can only contain bounded contexts of the type TEAM. This checker provides consistency within team maps. On such a map a bounded context represents a team and not a classical bounded context such as a system, feature or application.
|
|
28
|
-
|
|
29
|
-
# 9: SYSTEM LANDSCAPES
|
|
30
|
-
A bounded context of the type TEAM can not be contained by a context map of the type SYSTEM_LANDSCAPE. This checker provides consistency within context maps. Can be seen as the inverse case of rule #8.
|
|
31
|
-
|
|
32
|
-
# 10: Teams realize Bounded Contexts
|
|
1
|
+
The following semantic rules are either implicitly given by the domain model on which the language is based (see above), or enforced by corresponding semantic checkers.
|
|
2
|
+
|
|
3
|
+
Note that the model and the semantic rules express how we understand the DDD patterns and how they can be combined, and how we applied DDD on projects ourselves. Rationale: the literature is somewhat ambiguous.
|
|
4
|
+
|
|
5
|
+
# 1: Permitted Upstream Roles
|
|
6
|
+
The patterns OHS and PL can only be implemented by the upstream context in an upstream-downstream relationship. The upstream context always provides and exposes a certain functionality. The downstream context uses and consumes this services and does not expose parts of his/her own domain model. If this was the case and the upstream used this functionality, the definition that the upstream is independent of the downstream would be contradicted.
|
|
7
|
+
|
|
8
|
+
# 2: Permitted Downstream Roles
|
|
9
|
+
The patterns ACL and CF can only be applied by the downstream context in an upstream-downstream relationship. These patterns solve a downstream problem, namely how to deal with a dependency to another context. It is always the downstream context that has to integrate the upstream model.
|
|
10
|
+
|
|
11
|
+
# 3: Protect or Conform
|
|
12
|
+
The patterns ACL and CF cannot be applied jointly, but provide alternatives. The downstream either conforms (CF) or protects itself with an ACL.
|
|
13
|
+
|
|
14
|
+
# 4: Integrity of Symmetric Relationships
|
|
15
|
+
The patterns OHS, PL, ACL and CF are not applicable in symmetric relationships (Partnership and Shared Kernel), since doing so would lead to contradictions with the pattern definitions. In a Shared Kernel relationship, the two contexts communicate over shared code such as a library. Both contexts manage the shared code together, which clearly contradicts with the mentioned four pattern definitions. An OHS indicates a directed provider/consumer behavior which is not the case here. There is no need for a common inter-context language (PL), since the two contexts simply share the same model. An ACL is not required either since the two participants share the model anyway. And neither context has to conform to the model of the other since it is one shared model. In a Partnership relationship both contexts depend on each other, which means they can only succeed or fail together.
|
|
16
|
+
|
|
17
|
+
# 5: Customer vs. Conformist
|
|
18
|
+
The CF pattern is not applicable within a customer-supplier relationship. In a customer-supplier relationship the customer has influence on the supplier and can at least negotiate regarding priorities of the requirements and the implementation. A conformist in contrast has no influence and simply decides to conform to what the upstream provides.
|
|
19
|
+
|
|
20
|
+
# 6: Generic vs. Custom Service
|
|
21
|
+
The OHS pattern is not applicable within a customer-supplier relationship. Whereas the customer-supplier pattern implies that the involved teams work closely together, meaning that the upstream respects the downstreams requirements in his planning sessions, the OHS pattern indicates that the upstream team decides to implement one API in a one for all approach. This is contradictory since it is unlikely that such an upstream implementing an OHS is able to have a close customer-supplier relationship with all its downstreams. From personal practical experience a customer-supplier relationship leads to individual requirements of single customers. As soon as the supplier implements a customer-specific API feature it is by pattern definition no longer an OHS.
|
|
22
|
+
|
|
23
|
+
# 7: Protect or Cooperate
|
|
24
|
+
The ACL pattern should not be used within a customer-supplier relationship. Changes of the supplier should be in-sync with the needs of the customer. Protection should be unnecessary. Note that this is only a soft rule since the combination is possible but not common. Our tool issues a warning rather than an error message if it detects a violation of the rule.
|
|
25
|
+
|
|
26
|
+
# 8: ORGANIZATIONAL Context Maps
|
|
27
|
+
A context map of the type ORGANIZATIONAL (team map), can only contain bounded contexts of the type TEAM. This checker provides consistency within team maps. On such a map a bounded context represents a team and not a classical bounded context such as a system, feature or application.
|
|
28
|
+
|
|
29
|
+
# 9: SYSTEM LANDSCAPES
|
|
30
|
+
A bounded context of the type TEAM can not be contained by a context map of the type SYSTEM_LANDSCAPE. This checker provides consistency within context maps. Can be seen as the inverse case of rule #8.
|
|
31
|
+
|
|
32
|
+
# 10: Teams realize Bounded Contexts
|
|
33
33
|
Only teams can realize bounded contexts. This checker ensures that the realize keyword can only be used for bounded contexts of the type TEAM. The keyword is added to the language definition in order to reference the bounded contexts a team is realizing. It would not make sense for a classical bounded context (system, feature or application).
|
|
@@ -1,115 +1,131 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ck:git
|
|
3
|
-
description: "
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
-
|
|
35
|
-
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
**
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
1
|
+
---
|
|
2
|
+
name: ck:git
|
|
3
|
+
description: "Manage git commits, pushes, PRs, branch merges, and PR review-and-merge automation. Use for commit, push, PR creation, PR merge, CI follow-up, and secret scanning."
|
|
4
|
+
user-invocable: true
|
|
5
|
+
when_to_use: "Invoke for commits, PRs, branch hygiene, or release git steps."
|
|
6
|
+
category: dev-tools
|
|
7
|
+
keywords: [git, commits, staging, PR, merge, merge-pr, ci]
|
|
8
|
+
argument-hint: "cm|cp|pr|merge|merge-pr [args]"
|
|
9
|
+
metadata:
|
|
10
|
+
author: claudekit
|
|
11
|
+
version: "1.0.0"
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Git Operations
|
|
15
|
+
|
|
16
|
+
## Default (No Arguments)
|
|
17
|
+
|
|
18
|
+
If invoked without arguments, use `AskUserQuestion` to present available git operations:
|
|
19
|
+
|
|
20
|
+
| Operation | Description |
|
|
21
|
+
|-----------|-------------|
|
|
22
|
+
| `cm` | Stage files & create commits |
|
|
23
|
+
| `cp` | Stage files, create commits and push |
|
|
24
|
+
| `pr` | Create Pull Request |
|
|
25
|
+
| `merge` | Merge branches |
|
|
26
|
+
| `merge-pr` | Review, label, merge PRs, then watch/fix CI |
|
|
27
|
+
|
|
28
|
+
Present as options via `AskUserQuestion` with header "Git Operation", question "What would you like to do?".
|
|
29
|
+
|
|
30
|
+
Execute git workflows via `git-manager` subagent to isolate verbose output.
|
|
31
|
+
Keep verbose git/gh output out of the main context: `references/context-efficiency.md`.
|
|
32
|
+
|
|
33
|
+
**IMPORTANT:**
|
|
34
|
+
- Sacrifice grammar for the sake of concision.
|
|
35
|
+
- Ensure token efficiency while maintaining high quality.
|
|
36
|
+
- Pass these rules to subagents.
|
|
37
|
+
|
|
38
|
+
## Arguments
|
|
39
|
+
- `cm`: Stage files & create commits
|
|
40
|
+
- `cp`: Stage files, create commits and push
|
|
41
|
+
- `pr`: Create Pull Request [to-branch] [from-branch]
|
|
42
|
+
- `to-branch`: Target branch (default: main)
|
|
43
|
+
- `from-branch`: Source branch (default: current branch)
|
|
44
|
+
- `merge`: Merge [to-branch] [from-branch]
|
|
45
|
+
- `to-branch`: Target branch (default: main)
|
|
46
|
+
- `from-branch`: Source branch (default: current branch)
|
|
47
|
+
- `merge-pr`: Review, label, merge, and post-merge verify PRs
|
|
48
|
+
- Usage: `/ck:git merge-pr <PR numbers or URLs>`
|
|
49
|
+
- Accepts one or more PR numbers or GitHub PR URLs
|
|
50
|
+
- Runs `/code-review <PR>` before any label or merge (findings only — no auto-fix, no GitHub replies)
|
|
51
|
+
- Adds label `ready to ship` only once the review is clean and checks are green
|
|
52
|
+
- Merges only reviewed-and-ready PRs, then watches target-branch CI to success
|
|
53
|
+
|
|
54
|
+
## Quick Reference
|
|
55
|
+
|
|
56
|
+
| Task | Reference |
|
|
57
|
+
|------|-----------|
|
|
58
|
+
| Commit | `references/workflow-commit.md` |
|
|
59
|
+
| Push | `references/workflow-push.md` |
|
|
60
|
+
| Pull Request | `references/workflow-pr.md` |
|
|
61
|
+
| Merge | `references/workflow-merge.md` |
|
|
62
|
+
| Merge PRs | `references/workflow-merge-pr.md` |
|
|
63
|
+
| Standards | `references/commit-standards.md` |
|
|
64
|
+
| Safety | `references/safety-protocols.md` |
|
|
65
|
+
| Branches | `references/branch-management.md` |
|
|
66
|
+
| GitHub CLI | `references/gh-cli-guide.md` |
|
|
67
|
+
| Context efficiency | `references/context-efficiency.md` |
|
|
68
|
+
|
|
69
|
+
## Core Workflow
|
|
70
|
+
|
|
71
|
+
### Step 1: Stage + Analyze
|
|
72
|
+
```bash
|
|
73
|
+
git add -A && git diff --cached --stat && git diff --cached --name-only
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
### Step 2: Security Check
|
|
77
|
+
Scan for secrets before commit:
|
|
78
|
+
```bash
|
|
79
|
+
git diff --cached | grep -iE "(api[_-]?key|token|password|secret|credential)"
|
|
80
|
+
```
|
|
81
|
+
**If secrets found:** STOP, warn user, suggest `.gitignore`.
|
|
82
|
+
|
|
83
|
+
### Step 3: Split Decision
|
|
84
|
+
|
|
85
|
+
**NOTE:**
|
|
86
|
+
- Search for related issues on GitHub and add to body.
|
|
87
|
+
- Only use `feat`, `fix`, or `perf` prefixes for files in `.claude` directory (do not use `docs`).
|
|
88
|
+
|
|
89
|
+
**Split commits if:**
|
|
90
|
+
- Different types mixed (feat + fix, code + docs)
|
|
91
|
+
- Multiple scopes (auth + payments)
|
|
92
|
+
- Config/deps + code mixed
|
|
93
|
+
- FILES > 10 unrelated
|
|
94
|
+
|
|
95
|
+
**Single commit if:**
|
|
96
|
+
- Same type/scope, FILES ≤ 3, LINES ≤ 50
|
|
97
|
+
|
|
98
|
+
### Step 4: Commit
|
|
99
|
+
```bash
|
|
100
|
+
git commit -m "type(scope): description"
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
## Output Format
|
|
104
|
+
```
|
|
105
|
+
✓ staged: N files (+X/-Y lines)
|
|
106
|
+
✓ security: passed
|
|
107
|
+
✓ commit: HASH type(scope): description
|
|
108
|
+
✓ pushed: yes/no
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
## Error Handling
|
|
112
|
+
|
|
113
|
+
| Error | Action |
|
|
114
|
+
|-------|--------|
|
|
115
|
+
| Secrets detected | Block commit, show files |
|
|
116
|
+
| No changes | Exit cleanly |
|
|
117
|
+
| Push rejected | Suggest `git pull --rebase` |
|
|
118
|
+
| Merge conflicts | Suggest manual resolution |
|
|
119
|
+
|
|
120
|
+
## References
|
|
121
|
+
|
|
122
|
+
- `references/workflow-commit.md` - Commit workflow with split logic
|
|
123
|
+
- `references/workflow-push.md` - Push workflow with error handling
|
|
124
|
+
- `references/workflow-pr.md` - PR creation with remote diff analysis
|
|
125
|
+
- `references/workflow-merge.md` - Branch merge workflow
|
|
126
|
+
- `references/workflow-merge-pr.md` - PR review, ready label, merge, and CI convergence workflow
|
|
127
|
+
- `references/commit-standards.md` - Conventional commit format rules
|
|
128
|
+
- `references/safety-protocols.md` - Secret detection, branch protection
|
|
129
|
+
- `references/branch-management.md` - Naming, lifecycle, strategies
|
|
130
|
+
- `references/gh-cli-guide.md` - GitHub CLI commands reference
|
|
131
|
+
- `references/context-efficiency.md` - Keeping verbose git/gh output out of context
|
|
@@ -1,88 +1,88 @@
|
|
|
1
|
-
# Branch Management
|
|
2
|
-
|
|
3
|
-
## Naming Convention
|
|
4
|
-
|
|
5
|
-
**Format:** `<type>/<descriptive-name>`
|
|
6
|
-
|
|
7
|
-
| Type | Purpose | Example |
|
|
8
|
-
|------|---------|---------|
|
|
9
|
-
| `feature/` | New features | `feature/oauth-login` |
|
|
10
|
-
| `fix/` | Bug fixes | `fix/db-timeout` |
|
|
11
|
-
| `refactor/` | Code restructure | `refactor/api-cleanup` |
|
|
12
|
-
| `docs/` | Documentation | `docs/api-reference` |
|
|
13
|
-
| `test/` | Test improvements | `test/integration-suite` |
|
|
14
|
-
| `chore/` | Maintenance | `chore/deps-update` |
|
|
15
|
-
| `hotfix/` | Production fixes | `hotfix/payment-crash` |
|
|
16
|
-
|
|
17
|
-
## Branch Lifecycle
|
|
18
|
-
|
|
19
|
-
### Create
|
|
20
|
-
```bash
|
|
21
|
-
git checkout main
|
|
22
|
-
git pull origin main
|
|
23
|
-
git checkout -b feature/new-feature
|
|
24
|
-
```
|
|
25
|
-
|
|
26
|
-
### During Development
|
|
27
|
-
```bash
|
|
28
|
-
# Regular commits
|
|
29
|
-
git add <files> && git commit -m "feat(scope): description"
|
|
30
|
-
|
|
31
|
-
# Stay current with main
|
|
32
|
-
git fetch origin
|
|
33
|
-
git rebase origin/main
|
|
34
|
-
```
|
|
35
|
-
|
|
36
|
-
### Before Merge
|
|
37
|
-
```bash
|
|
38
|
-
# Push final state
|
|
39
|
-
git push origin feature/new-feature
|
|
40
|
-
|
|
41
|
-
# Or after rebase (feature branches only)
|
|
42
|
-
git push -f origin feature/new-feature
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
### After Merge
|
|
46
|
-
```bash
|
|
47
|
-
# Delete local
|
|
48
|
-
git branch -d feature/new-feature
|
|
49
|
-
|
|
50
|
-
# Delete remote
|
|
51
|
-
git push origin --delete feature/new-feature
|
|
52
|
-
```
|
|
53
|
-
|
|
54
|
-
## Branch Strategies
|
|
55
|
-
|
|
56
|
-
### Simple (small teams)
|
|
57
|
-
```
|
|
58
|
-
main (production)
|
|
59
|
-
└─ feature/* (development)
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
### Git Flow (releases)
|
|
63
|
-
```
|
|
64
|
-
main (production)
|
|
65
|
-
develop (staging)
|
|
66
|
-
├─ feature/*
|
|
67
|
-
├─ bugfix/*
|
|
68
|
-
├─ hotfix/*
|
|
69
|
-
└─ release/*
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
### Trunk-Based (CI/CD)
|
|
73
|
-
```
|
|
74
|
-
main (always deployable)
|
|
75
|
-
└─ short-lived feature branches
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
## Quick Commands
|
|
79
|
-
|
|
80
|
-
| Task | Command |
|
|
81
|
-
|------|---------|
|
|
82
|
-
| List branches | `git branch -a` |
|
|
83
|
-
| Current branch | `git rev-parse --abbrev-ref HEAD` |
|
|
84
|
-
| Switch branch | `git checkout <branch>` |
|
|
85
|
-
| Create + switch | `git checkout -b <branch>` |
|
|
86
|
-
| Delete local | `git branch -d <branch>` |
|
|
87
|
-
| Delete remote | `git push origin --delete <branch>` |
|
|
88
|
-
| Rename | `git branch -m <old> <new>` |
|
|
1
|
+
# Branch Management
|
|
2
|
+
|
|
3
|
+
## Naming Convention
|
|
4
|
+
|
|
5
|
+
**Format:** `<type>/<descriptive-name>`
|
|
6
|
+
|
|
7
|
+
| Type | Purpose | Example |
|
|
8
|
+
|------|---------|---------|
|
|
9
|
+
| `feature/` | New features | `feature/oauth-login` |
|
|
10
|
+
| `fix/` | Bug fixes | `fix/db-timeout` |
|
|
11
|
+
| `refactor/` | Code restructure | `refactor/api-cleanup` |
|
|
12
|
+
| `docs/` | Documentation | `docs/api-reference` |
|
|
13
|
+
| `test/` | Test improvements | `test/integration-suite` |
|
|
14
|
+
| `chore/` | Maintenance | `chore/deps-update` |
|
|
15
|
+
| `hotfix/` | Production fixes | `hotfix/payment-crash` |
|
|
16
|
+
|
|
17
|
+
## Branch Lifecycle
|
|
18
|
+
|
|
19
|
+
### Create
|
|
20
|
+
```bash
|
|
21
|
+
git checkout main
|
|
22
|
+
git pull origin main
|
|
23
|
+
git checkout -b feature/new-feature
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
### During Development
|
|
27
|
+
```bash
|
|
28
|
+
# Regular commits
|
|
29
|
+
git add <files> && git commit -m "feat(scope): description"
|
|
30
|
+
|
|
31
|
+
# Stay current with main
|
|
32
|
+
git fetch origin
|
|
33
|
+
git rebase origin/main
|
|
34
|
+
```
|
|
35
|
+
|
|
36
|
+
### Before Merge
|
|
37
|
+
```bash
|
|
38
|
+
# Push final state
|
|
39
|
+
git push origin feature/new-feature
|
|
40
|
+
|
|
41
|
+
# Or after rebase (feature branches only)
|
|
42
|
+
git push -f origin feature/new-feature
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
### After Merge
|
|
46
|
+
```bash
|
|
47
|
+
# Delete local
|
|
48
|
+
git branch -d feature/new-feature
|
|
49
|
+
|
|
50
|
+
# Delete remote
|
|
51
|
+
git push origin --delete feature/new-feature
|
|
52
|
+
```
|
|
53
|
+
|
|
54
|
+
## Branch Strategies
|
|
55
|
+
|
|
56
|
+
### Simple (small teams)
|
|
57
|
+
```
|
|
58
|
+
main (production)
|
|
59
|
+
└─ feature/* (development)
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
### Git Flow (releases)
|
|
63
|
+
```
|
|
64
|
+
main (production)
|
|
65
|
+
develop (staging)
|
|
66
|
+
├─ feature/*
|
|
67
|
+
├─ bugfix/*
|
|
68
|
+
├─ hotfix/*
|
|
69
|
+
└─ release/*
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
### Trunk-Based (CI/CD)
|
|
73
|
+
```
|
|
74
|
+
main (always deployable)
|
|
75
|
+
└─ short-lived feature branches
|
|
76
|
+
```
|
|
77
|
+
|
|
78
|
+
## Quick Commands
|
|
79
|
+
|
|
80
|
+
| Task | Command |
|
|
81
|
+
|------|---------|
|
|
82
|
+
| List branches | `git branch -a` |
|
|
83
|
+
| Current branch | `git rev-parse --abbrev-ref HEAD` |
|
|
84
|
+
| Switch branch | `git checkout <branch>` |
|
|
85
|
+
| Create + switch | `git checkout -b <branch>` |
|
|
86
|
+
| Delete local | `git branch -d <branch>` |
|
|
87
|
+
| Delete remote | `git push origin --delete <branch>` |
|
|
88
|
+
| Rename | `git branch -m <old> <new>` |
|
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
# Commit Message Standards
|
|
2
|
-
|
|
3
|
-
## Format
|
|
4
|
-
```
|
|
5
|
-
type(scope): description
|
|
6
|
-
```
|
|
7
|
-
|
|
8
|
-
## Types (priority order)
|
|
9
|
-
- `feat`: New feature
|
|
10
|
-
- `fix`: Bug fix
|
|
11
|
-
- `docs`: Documentation only
|
|
12
|
-
- `style`: Formatting (no logic change)
|
|
13
|
-
- `refactor`: Restructure without behavior change
|
|
14
|
-
- `test`: Tests
|
|
15
|
-
- `chore`: Maintenance, deps, config
|
|
16
|
-
- `perf`: Performance
|
|
17
|
-
- `build`: Build system
|
|
18
|
-
- `ci`: CI/CD
|
|
19
|
-
|
|
20
|
-
## Rules
|
|
21
|
-
- **<72 characters**
|
|
22
|
-
- **Present tense, imperative** ("add" not "added")
|
|
23
|
-
- **No period at end**
|
|
24
|
-
- **Scope optional but recommended**
|
|
25
|
-
- **Focus on WHAT, not HOW**
|
|
26
|
-
- Only use `feat`, `fix`, or `perf` prefixes for files in `.claude` directory (do not use `docs`).
|
|
27
|
-
|
|
28
|
-
## NEVER Include AI Attribution
|
|
29
|
-
- ❌ "Generated with Claude"
|
|
30
|
-
- ❌ "Co-Authored-By: Claude"
|
|
31
|
-
- ❌ Any AI reference
|
|
32
|
-
|
|
33
|
-
## Good Examples
|
|
34
|
-
- `feat(auth): add login validation`
|
|
35
|
-
- `fix(api): resolve query timeout`
|
|
36
|
-
- `docs(readme): update install guide`
|
|
37
|
-
- `refactor(utils): simplify date logic`
|
|
38
|
-
|
|
39
|
-
## Bad Examples
|
|
40
|
-
- ❌ `Updated files` (not descriptive)
|
|
41
|
-
- ❌ `feat(auth): added login using bcrypt with salt` (too long, describes HOW)
|
|
42
|
-
- ❌ `Fix bug` (not specific)
|
|
43
|
-
|
|
44
|
-
## Special Cases
|
|
45
|
-
- `.claude/` skill updates: `perf(skill): improve token efficiency`
|
|
46
|
-
- `.claude/` new skills: `feat(skill): add database-optimizer`
|
|
1
|
+
# Commit Message Standards
|
|
2
|
+
|
|
3
|
+
## Format
|
|
4
|
+
```
|
|
5
|
+
type(scope): description
|
|
6
|
+
```
|
|
7
|
+
|
|
8
|
+
## Types (priority order)
|
|
9
|
+
- `feat`: New feature
|
|
10
|
+
- `fix`: Bug fix
|
|
11
|
+
- `docs`: Documentation only
|
|
12
|
+
- `style`: Formatting (no logic change)
|
|
13
|
+
- `refactor`: Restructure without behavior change
|
|
14
|
+
- `test`: Tests
|
|
15
|
+
- `chore`: Maintenance, deps, config
|
|
16
|
+
- `perf`: Performance
|
|
17
|
+
- `build`: Build system
|
|
18
|
+
- `ci`: CI/CD
|
|
19
|
+
|
|
20
|
+
## Rules
|
|
21
|
+
- **<72 characters**
|
|
22
|
+
- **Present tense, imperative** ("add" not "added")
|
|
23
|
+
- **No period at end**
|
|
24
|
+
- **Scope optional but recommended**
|
|
25
|
+
- **Focus on WHAT, not HOW**
|
|
26
|
+
- Only use `feat`, `fix`, or `perf` prefixes for files in `.claude` directory (do not use `docs`).
|
|
27
|
+
|
|
28
|
+
## NEVER Include AI Attribution
|
|
29
|
+
- ❌ "Generated with Claude"
|
|
30
|
+
- ❌ "Co-Authored-By: Claude"
|
|
31
|
+
- ❌ Any AI reference
|
|
32
|
+
|
|
33
|
+
## Good Examples
|
|
34
|
+
- `feat(auth): add login validation`
|
|
35
|
+
- `fix(api): resolve query timeout`
|
|
36
|
+
- `docs(readme): update install guide`
|
|
37
|
+
- `refactor(utils): simplify date logic`
|
|
38
|
+
|
|
39
|
+
## Bad Examples
|
|
40
|
+
- ❌ `Updated files` (not descriptive)
|
|
41
|
+
- ❌ `feat(auth): added login using bcrypt with salt` (too long, describes HOW)
|
|
42
|
+
- ❌ `Fix bug` (not specific)
|
|
43
|
+
|
|
44
|
+
## Special Cases
|
|
45
|
+
- `.claude/` skill updates: `perf(skill): improve token efficiency`
|
|
46
|
+
- `.claude/` new skills: `feat(skill): add database-optimizer`
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
# Context Efficiency for Git Workflows
|
|
2
|
+
|
|
3
|
+
Git and `gh` emit some of the largest output in any workflow: full diffs, log
|
|
4
|
+
walls, PR bodies, CI job logs. Left unfiltered they crowd out the reasoning that
|
|
5
|
+
actually decides the commit or merge. Keep the main context small and high-signal.
|
|
6
|
+
|
|
7
|
+
## Isolate
|
|
8
|
+
|
|
9
|
+
Run verbose git/gh work in the `git-manager` subagent and return only what the
|
|
10
|
+
decision needs — the file list, the verdict, the failing line. Never return a raw
|
|
11
|
+
diff, a full `git log`, or a complete CI log to the main context.
|
|
12
|
+
|
|
13
|
+
For a batch (several PRs), handle one PR per subagent pass so one noisy PR cannot
|
|
14
|
+
crowd out the rest.
|
|
15
|
+
|
|
16
|
+
## Select before you read
|
|
17
|
+
|
|
18
|
+
Ask the command for the narrow answer instead of filtering a wide one afterwards:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
git log --oneline -10 # not: git log
|
|
22
|
+
git diff --name-only # not: git diff, when you only need the files
|
|
23
|
+
git diff --stat # size of change without the body
|
|
24
|
+
gh pr view 123 --json title,mergeStateStatus,statusCheckRollup
|
|
25
|
+
gh run view "$RUN_ID" --log-failed # not: --log, which returns every job
|
|
26
|
+
```
|
|
27
|
+
|
|
28
|
+
`gh` has a built-in jq engine — `--json <fields> --jq '<filter>'` — so field
|
|
29
|
+
selection needs no external tool.
|
|
30
|
+
|
|
31
|
+
## Compress what you must keep
|
|
32
|
+
|
|
33
|
+
When output has to survive into the main context, summarize it: the failing test
|
|
34
|
+
name and assertion, not the whole runner output; the conflicting paths, not the
|
|
35
|
+
conflict bodies. Cite `file:line` and drop the surrounding text.
|
|
36
|
+
|
|
37
|
+
## Position what matters
|
|
38
|
+
|
|
39
|
+
Put the decision-relevant facts at the start or end of a subagent report, never
|
|
40
|
+
buried in the middle — attention degrades in the middle of long context.
|
|
41
|
+
|
|
42
|
+
## Budget
|
|
43
|
+
|
|
44
|
+
Watch context utilization: **70% is a warning** to start compacting, **90% is
|
|
45
|
+
critical** — stop expanding scope and summarize what you have. On a long merge
|
|
46
|
+
batch, checkpoint progress (which PRs are merged, which remain) to a file rather
|
|
47
|
+
than carrying the whole history forward.
|
|
48
|
+
|
|
49
|
+
## Anti-patterns
|
|
50
|
+
|
|
51
|
+
- Pasting a full diff or CI log into the main context "for reference"
|
|
52
|
+
- Re-running a wide command because the narrow output was discarded
|
|
53
|
+
- One subagent accumulating every PR in a batch
|
|
54
|
+
- Reading a file the command could have filtered for you
|