@renoxar/koolie 1.25.0 → 2.0.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/.github/workflows/publish.yml +177 -0
- package/.koolie/QUELLREPOSITORIUM.md +9 -14
- package/.koolie/core/CHANGELOG.md +59 -0
- package/.koolie/core/LICENSE-HINWEIS.md +5 -6
- package/.koolie/core/OWNERS.md +2 -2
- package/.koolie/core/VERSION +1 -1
- package/.koolie/core/build/doc/00-kopf.md +6 -6
- package/.koolie/core/build/doc/01-executive-summary.md +8 -8
- package/.koolie/core/build/doc/03-ziele-nichtziele.md +2 -2
- package/.koolie/core/build/doc/04-geltungsbereich.md +4 -4
- package/.koolie/core/build/doc/05-glossar.md +3 -3
- package/.koolie/core/build/doc/07-architektur.md +2 -2
- package/.koolie/core/build/doc/07a-abbildungsschicht.md +9 -9
- package/.koolie/core/build/doc/08-trennung.md +3 -3
- package/.koolie/core/build/doc/09-betriebsmodi.md +8 -8
- package/.koolie/core/build/doc/15-referenzstruktur.md +56 -27
- package/.koolie/core/build/doc/16-agentenanweisung.md +2 -2
- package/.koolie/core/build/doc/20-referenz-skills.md +46 -46
- package/.koolie/core/build/doc/25-governance.md +9 -1
- package/.koolie/core/build/doc/26-qs-test.md +32 -3
- package/.koolie/core/build/doc/27-pilot.md +2 -2
- package/.koolie/core/build/doc/28-uebernahme.md +9 -1
- package/.koolie/core/build/doc/30-roadmap.md +3 -1
- package/.koolie/core/build/doc/31-anhaenge.md +1 -1
- package/.koolie/core/checklists/01-preflight.md +3 -3
- package/.koolie/core/checklists/02-privacy-context.md +1 -1
- package/.koolie/core/checklists/03-before-code-change.md +2 -2
- package/.koolie/core/checklists/04-review-ai-code.md +1 -1
- package/.koolie/core/checklists/05-testing.md +1 -1
- package/.koolie/core/checklists/06-security.md +1 -1
- package/.koolie/core/checklists/08-merge-request.md +1 -1
- package/.koolie/core/checklists/09-onboarding.md +2 -2
- package/.koolie/core/checklists/10-project-adoption.md +8 -8
- package/.koolie/core/checklists/11-framework-release.md +14 -14
- package/.koolie/core/clientmap.py +2 -2
- package/.koolie/core/clients/README.md +54 -52
- package/.koolie/core/clients/_template/CLIENT_PACK.md +19 -19
- package/.koolie/core/clients/claude-code/CLIENT_PACK.md +108 -164
- package/.koolie/core/clients/claude-code/manifest.json +5 -5
- package/.koolie/core/clients/claude-code/root-template/.claude/README.md +9 -9
- package/.koolie/core/clients/cursor/CLIENT_PACK.md +66 -60
- package/.koolie/core/clients/cursor/manifest.json +3 -3
- package/.koolie/core/clients/cursor/root-template/.cursor/README.md +3 -3
- package/.koolie/core/clients/devin-desktop/CLIENT_PACK.md +62 -64
- package/.koolie/core/clients/devin-desktop/manifest.json +5 -5
- package/.koolie/core/clients/devin-desktop/root-template/.devin/README.md +9 -9
- package/.koolie/core/clients/kiro/CLIENT_PACK.md +55 -48
- package/.koolie/core/clients/kiro/manifest.json +4 -4
- package/.koolie/core/clients/kiro/root-template/.kiro/README.md +3 -3
- package/.koolie/core/clients/openai-codex/CLIENT_PACK.md +98 -103
- package/.koolie/core/clients/openai-codex/manifest.json +3 -3
- package/.koolie/core/clients/openai-codex/root-template/.codex/README.md +2 -2
- package/.koolie/core/decision-trees/02-may-ai-do-task.md +2 -2
- package/.koolie/core/decision-trees/03-analyze-or-modify.md +12 -12
- package/.koolie/core/decision-trees/04-required-review.md +1 -1
- package/.koolie/core/docs/ADOPTION_GUIDE.md +281 -385
- package/.koolie/core/docs/DOCUMENTATION_STANDARD.md +44 -36
- package/.koolie/core/docs/PLACEHOLDER_REGISTRY.md +8 -8
- package/.koolie/core/docs/ROADMAP.md +34 -17
- package/.koolie/core/docs/RUNTIME_GLOSSARY.md +34 -35
- package/.koolie/core/examples/example-ergebnisbericht.md +1 -1
- package/.koolie/core/examples/example-mr-description.md +2 -2
- package/.koolie/core/framework/core/00-principles.md +1 -1
- package/.koolie/core/framework/core/01-governance.md +8 -8
- package/.koolie/core/framework/core/02-privacy.md +12 -12
- package/.koolie/core/framework/core/03-security.md +13 -11
- package/.koolie/core/framework/core/05-working-model.md +22 -22
- package/.koolie/core/framework/core/06-prompting-rules.md +5 -5
- package/.koolie/core/framework/core/07-review-rules.md +1 -1
- package/.koolie/core/framework/core/08-skill-conventions.md +11 -11
- package/.koolie/core/framework/core/09-risk-model.md +6 -6
- package/.koolie/core/framework/core/10-error-escalation.md +1 -1
- package/.koolie/core/framework/org-policies/MAPPING_CLASSIFICATION.md +1 -1
- package/.koolie/core/framework/overlay-patterns/general.md +63 -75
- package/.koolie/core/framework/role-packs/README.md +16 -28
- package/.koolie/core/framework/role-packs/_template/ROLE_PACK.md +3 -3
- package/.koolie/core/framework/role-packs/requirements-engineering/ROLE_PACK.md +23 -22
- package/.koolie/core/framework/role-packs/requirements-engineering/runtime/30-role-requirements-engineering.md +5 -5
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/{role-re-ticket → koolie-ticket}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/{role-re-ticket → koolie-ticket}/EXAMPLES.md +5 -5
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/{role-re-ticket → koolie-ticket}/SKILL.md +9 -9
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/koolie-ticket/TESTS.md +22 -0
- package/.koolie/core/framework/role-packs/software-development/ROLE_PACK.md +16 -16
- package/.koolie/core/framework/role-packs/software-development/runtime/30-role-software-development.md +1 -1
- package/.koolie/core/framework/runtime/agents/{fw-reviewer.md → koolie-reviewer.md} +2 -2
- package/.koolie/core/framework/runtime/permissions.json +13 -13
- package/.koolie/core/framework/runtime/root-instruction.md +5 -5
- package/.koolie/core/framework/runtime/rules/10-privacy-security.md +2 -2
- package/.koolie/core/framework/runtime/rules/15-development-rules.md +1 -1
- package/.koolie/core/framework/runtime/rules/16-plan-spezifikation.md +1 -1
- package/.koolie/core/framework/runtime/rules/20-project-overlay.md +2 -2
- package/.koolie/core/framework/skills/{fw-bugfix-prepare → koolie-bugfix-prepare}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-bugfix-prepare → koolie-bugfix-prepare}/EXAMPLES.md +8 -8
- package/.koolie/core/framework/skills/{fw-bugfix-prepare → koolie-bugfix-prepare}/SKILL.md +21 -21
- package/.koolie/core/framework/skills/koolie-bugfix-prepare/TESTS.md +15 -0
- package/.koolie/core/framework/skills/{fw-change-analyze → koolie-change-analyze}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-change-analyze → koolie-change-analyze}/EXAMPLES.md +6 -6
- package/.koolie/core/framework/skills/{fw-change-analyze → koolie-change-analyze}/SKILL.md +12 -12
- package/.koolie/core/framework/skills/koolie-change-analyze/TESTS.md +16 -0
- package/.koolie/core/framework/skills/{fw-change-small → koolie-change-small}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-change-small → koolie-change-small}/EXAMPLES.md +4 -4
- package/.koolie/core/framework/skills/{fw-change-small → koolie-change-small}/SKILL.md +15 -15
- package/.koolie/core/framework/skills/koolie-change-small/TESTS.md +13 -0
- package/.koolie/core/framework/skills/{fw-code-explain → koolie-code-explain}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-code-explain → koolie-code-explain}/EXAMPLES.md +4 -4
- package/.koolie/core/framework/skills/{fw-code-explain → koolie-code-explain}/SKILL.md +10 -10
- package/.koolie/core/framework/skills/koolie-code-explain/TESTS.md +11 -0
- package/.koolie/core/framework/skills/{fw-docs-update → koolie-docs-update}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-docs-update → koolie-docs-update}/EXAMPLES.md +3 -3
- package/.koolie/core/framework/skills/{fw-docs-update → koolie-docs-update}/SKILL.md +8 -8
- package/.koolie/core/framework/skills/koolie-docs-update/TESTS.md +12 -0
- package/.koolie/core/framework/skills/{fw-error-analyze → koolie-error-analyze}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-error-analyze → koolie-error-analyze}/EXAMPLES.md +6 -6
- package/.koolie/core/framework/skills/{fw-error-analyze → koolie-error-analyze}/SKILL.md +15 -15
- package/.koolie/core/framework/skills/koolie-error-analyze/TESTS.md +12 -0
- package/.koolie/core/framework/skills/{fw-mr-description → koolie-mr-description}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-mr-description → koolie-mr-description}/EXAMPLES.md +6 -6
- package/.koolie/core/framework/skills/{fw-mr-description → koolie-mr-description}/SKILL.md +8 -8
- package/.koolie/core/framework/skills/koolie-mr-description/TESTS.md +12 -0
- package/.koolie/core/framework/skills/{fw-overlay-pflege → koolie-overlay-pflege}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-overlay-pflege → koolie-overlay-pflege}/EXAMPLES.md +4 -4
- package/.koolie/core/framework/skills/{fw-overlay-pflege → koolie-overlay-pflege}/SKILL.md +8 -8
- package/.koolie/core/framework/skills/koolie-overlay-pflege/TESTS.md +13 -0
- package/.koolie/core/framework/skills/{fw-plan → koolie-plan}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-plan → koolie-plan}/EXAMPLES.md +7 -7
- package/.koolie/core/framework/skills/{fw-plan → koolie-plan}/SKILL.md +14 -14
- package/.koolie/core/framework/skills/koolie-plan/TESTS.md +14 -0
- package/.koolie/core/framework/skills/{fw-refactor → koolie-refactor}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-refactor → koolie-refactor}/EXAMPLES.md +4 -4
- package/.koolie/core/framework/skills/{fw-refactor → koolie-refactor}/SKILL.md +12 -12
- package/.koolie/core/framework/skills/koolie-refactor/TESTS.md +14 -0
- package/.koolie/core/framework/skills/{fw-repo-analyze → koolie-repo-analyze}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-repo-analyze → koolie-repo-analyze}/EXAMPLES.md +4 -4
- package/.koolie/core/framework/skills/{fw-repo-analyze → koolie-repo-analyze}/SKILL.md +8 -8
- package/.koolie/core/framework/skills/koolie-repo-analyze/TESTS.md +11 -0
- package/.koolie/core/framework/skills/{fw-review-support → koolie-review-support}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-review-support → koolie-review-support}/EXAMPLES.md +3 -3
- package/.koolie/core/framework/skills/{fw-review-support → koolie-review-support}/SKILL.md +7 -7
- package/.koolie/core/framework/skills/koolie-review-support/TESTS.md +13 -0
- package/.koolie/core/framework/skills/{fw-tests → koolie-tests}/CHANGELOG.md +2 -1
- package/.koolie/core/framework/skills/{fw-tests → koolie-tests}/EXAMPLES.md +5 -5
- package/.koolie/core/framework/skills/{fw-tests → koolie-tests}/SKILL.md +11 -11
- package/.koolie/core/framework/skills/koolie-tests/TESTS.md +12 -0
- package/.koolie/core/framework/tech-packs/README.md +2 -2
- package/.koolie/core/framework/tech-packs/_template/TECH_PACK.md +2 -2
- package/.koolie/core/governance/ADOPTION_REGISTRY.md +22 -58
- package/.koolie/core/governance/CHANGE_REQUEST_TEMPLATE.md +1 -1
- package/.koolie/core/governance/DECISION_LOG.md +7 -1
- package/.koolie/core/governance/EXCEPTION_PROCESS.md +1 -1
- package/.koolie/core/governance/FEEDBACK_PROCESS.md +1 -1
- package/.koolie/core/governance/FRAMEWORK_DEV_PROFILE.md +64 -66
- package/.koolie/core/governance/PRIORITY_HIERARCHY.md +13 -13
- package/.koolie/core/governance/RACI.md +3 -3
- package/.koolie/core/governance/RELEASE_PROCESS.md +101 -108
- package/.koolie/core/governance/change-requests/CR-2026-173-oeffentlicher-auftritt-koolie-praefix.md +67 -0
- package/.koolie/core/install.py +99 -0
- package/.koolie/core/koexistenz.py +2 -2
- package/.koolie/core/onboarding/GUIDE.md +7 -7
- package/.koolie/core/onboarding/KNOWLEDGE_CHECK.md +1 -1
- package/.koolie/core/onboarding/MENTOR_CHECKLIST.md +3 -3
- package/.koolie/core/onboarding/QUICKSTART.md +2 -2
- package/.koolie/core/onboarding/REFERENCE.md +14 -14
- package/.koolie/core/onboarding/exercises/EXERCISES.md +8 -8
- package/.koolie/core/onboarding/exercises/README.md +47 -65
- package/.koolie/core/pilot/PILOT_CONCEPT.md +1 -1
- package/.koolie/core/prompts/01-understand-codebase.md +11 -7
- package/.koolie/core/prompts/02-impact-analysis.md +17 -7
- package/.koolie/core/prompts/03-implementation-planning.md +10 -6
- package/.koolie/core/prompts/04-code-generation.md +11 -5
- package/.koolie/core/prompts/05-test-generation.md +13 -7
- package/.koolie/core/prompts/06-refactoring.md +14 -8
- package/.koolie/core/prompts/07-debugging.md +13 -11
- package/.koolie/core/prompts/08-security-review.md +2 -2
- package/.koolie/core/prompts/09-performance-analysis.md +2 -2
- package/.koolie/core/prompts/10-documentation.md +6 -4
- package/.koolie/core/prompts/11-merge-request-review.md +7 -5
- package/.koolie/core/prompts/12-developer-training.md +5 -3
- package/.koolie/core/prompts/README.md +17 -15
- package/.koolie/core/templates/MR_AI_DISCLOSURE.md +2 -2
- package/.koolie/core/templates/PLAN_TEMPLATE.md +2 -2
- package/.koolie/core/templates/SKILL_TEMPLATE.md +3 -3
- package/.koolie/core/templates/project-overlay/OVERLAY.md +28 -22
- package/.koolie/core/templates/project-overlay/documents/architecture/decisions/README.md +1 -1
- package/.koolie/core/tests/EDGE_CASES.md +4 -7
- package/.koolie/core/tests/TEST_CATALOG.md +33 -33
- package/.koolie/core/tests/protocols/2026-10-02-oeffentlicher-auftritt-2.0.0.md +42 -0
- package/.koolie/core/tests/scripts/hook-check-secrets.py +2 -2
- package/.koolie/core/tests/scripts/hook-overlay-status.py +1 -1
- package/.koolie/core/tests/scripts/probe-pruefungen.py +4 -2
- package/.koolie/core/tests/scripts/pruefungen/berechtigungen.py +7 -7
- package/.koolie/core/tests/scripts/pruefungen/bestand.py +20 -3
- package/.koolie/core/tests/scripts/pruefungen/dokumente.py +88 -0
- package/.koolie/core/tests/scripts/pruefungen/gemeinsam.py +1 -1
- package/.koolie/core/tests/scripts/pruefungen/hooks.py +1 -1
- package/.koolie/core/tests/scripts/pruefungen/overlay.py +5 -5
- package/.koolie/core/tests/scripts/pruefungen/testkatalog.py +5 -5
- package/.koolie/core/tests/scripts/pruefungen/werkzeuge.py +81 -2
- package/.koolie/core/tests/scripts/sonden/teil02_packs_mandat_mcp.py +6 -6
- package/.koolie/core/tests/scripts/sonden/teil03_pruefungen_26_bis_36.py +11 -11
- package/.koolie/core/tests/scripts/sonden/teil04_pruefungen_37_bis_45.py +11 -11
- package/.koolie/core/tests/scripts/sonden/teil05_pruefungen_46_bis_55.py +4 -4
- package/.koolie/core/tests/scripts/sonden/teil06_pruefungen_57_bis_65.py +33 -33
- package/.koolie/core/tests/scripts/sonden/teil07_overlay_und_lieferung.py +3 -3
- package/.koolie/core/tests/scripts/sonden/teil08_pruefungen_66_bis_80.py +3 -3
- package/.koolie/core/tests/scripts/sonden/teil10_pruefungen_83_bis_95.py +3 -3
- package/.koolie/core/tests/scripts/sonden/teil11_pruefungen_104_und_105.py +2 -2
- package/.koolie/core/tests/scripts/sonden/teil14_modi_ausnahmen_skills.py +1 -1
- package/.koolie/core/tests/scripts/sonden/teil16_koexistenz.py +5 -5
- package/.koolie/core/tests/scripts/sonden/teil17_paketquellen.py +33 -0
- package/.koolie/core/tests/scripts/sonden/teil19_skillnamen.py +97 -0
- package/.koolie/core/tests/scripts/sonden/teil20_kennungen.py +70 -0
- package/.koolie/core/tests/scripts/validate-framework.py +15 -6
- package/.koolie/core/tests/scripts/validate-output.py +1 -1
- package/CONTRIBUTING.md +16 -10
- package/QUICKSTART.en.md +44 -51
- package/QUICKSTART.md +44 -50
- package/package.json +2 -2
- package/paketquellen/README.md +11 -11
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/TESTS.md +0 -22
- package/.koolie/core/framework/skills/fw-bugfix-prepare/TESTS.md +0 -15
- package/.koolie/core/framework/skills/fw-change-analyze/TESTS.md +0 -16
- package/.koolie/core/framework/skills/fw-change-small/TESTS.md +0 -13
- package/.koolie/core/framework/skills/fw-code-explain/TESTS.md +0 -11
- package/.koolie/core/framework/skills/fw-docs-update/TESTS.md +0 -12
- package/.koolie/core/framework/skills/fw-error-analyze/TESTS.md +0 -12
- package/.koolie/core/framework/skills/fw-mr-description/TESTS.md +0 -12
- package/.koolie/core/framework/skills/fw-overlay-pflege/TESTS.md +0 -13
- package/.koolie/core/framework/skills/fw-plan/TESTS.md +0 -14
- package/.koolie/core/framework/skills/fw-refactor/TESTS.md +0 -14
- package/.koolie/core/framework/skills/fw-repo-analyze/TESTS.md +0 -11
- package/.koolie/core/framework/skills/fw-review-support/TESTS.md +0 -13
- package/.koolie/core/framework/skills/fw-tests/TESTS.md +0 -12
|
@@ -182,7 +182,7 @@ Prüft (statisch, ohne laufenden KI-Client):
|
|
|
182
182
|
`claude-code` bildet die fehlende Modellzulassung auf `disable-model-invocation`
|
|
183
183
|
ab. Ein nicht-interaktiver Messlauf bekommt sonst eine Abweisung statt des
|
|
184
184
|
Ablaufs, und der Testfall misst etwas anderes als seinen Gegenstand. Gemessen am
|
|
185
|
-
2026-09-18 an `FW-SC-01`: Der Hauptlauf rief `
|
|
185
|
+
2026-09-18 an `FW-SC-01`: Der Hauptlauf rief `koolie-change-small` auf, wurde
|
|
186
186
|
abgewiesen, arbeitete den Ablauf nicht nach - und damit fiel Schritt 3 des Skills
|
|
187
187
|
aus, der die Verwender der geaenderten Einheit erhebt. Neun von zwoelf Skills
|
|
188
188
|
betroffen, vier Fundstellen im Katalog
|
|
@@ -256,7 +256,7 @@ Prüft (statisch, ohne laufenden KI-Client):
|
|
|
256
256
|
Testfall ist nur in einem Baum fahrbar, den der Validator beanstandet. Gemessen am
|
|
257
257
|
2026-09-18: RE-001-N09 verlangte das Uebungs-Overlay "ohne gesetztes
|
|
258
258
|
<ISSUE_TRACKER>", und Pruefung 55b war im SELBEN Release entstanden. Gegen den Skill
|
|
259
|
-
gehalten trifft die Zelle etwas anderes:
|
|
259
|
+
gehalten trifft die Zelle etwas anderes: koolie-ticket nennt den Fall
|
|
260
260
|
"<ISSUE_TRACKER> unbekannt", also Bindung OHNE Wert - ein Ausfuellschlitz, kein
|
|
261
261
|
fehlender Platzhalter. Der Zuschnitt arbeitet auf TEILSAETZEN, nicht auf Zellen: Eine
|
|
262
262
|
Vorbedingung, die den Platzhalter in einem Teilsatz fordert und in einem anderen eine
|
|
@@ -295,7 +295,7 @@ Prüft (statisch, ohne laufenden KI-Client):
|
|
|
295
295
|
AUSFUEHRT (Exec(<..._COMMAND>) unter permissions), nennt diesen Schlitz in ihrer
|
|
296
296
|
VORBEDINGUNG. ANLASS: FW-SC-01 ist am 2026-09-18 zum dritten Mal gefahren worden
|
|
297
297
|
und zum dritten Mal nicht abnehmbar gewesen - der Lauf hat NICHTS geaendert, weil
|
|
298
|
-
|
|
298
|
+
koolie-change-small den Testbefehl VOR dem ersten Schreibzugriff verlangt und der
|
|
299
299
|
Befehl im Messbaum im ask-Korb stand; ask ist nicht-interaktiv eine Abweisung
|
|
300
300
|
(D-134). Derselbe Fehler kostete FW-PO-02 einen Durchgang. GRENZE: Geprueft wird
|
|
301
301
|
die NENNUNG des Schlitzes, nicht die Aussage darueber - die Pruefung faengt das
|
|
@@ -442,7 +442,7 @@ Prüft (statisch, ohne laufenden KI-Client):
|
|
|
442
442
|
Namenseintraegen der Berechtigungsdatei - in beide Richtungen. ANLASS, und er
|
|
443
443
|
ist gemessen: Der Messbaum von Buendel 5 trug nach der Aktivierung WORTGETREU
|
|
444
444
|
nach framework/role-packs/README.md dreizehn Skillverzeichnisse und zwoelf
|
|
445
|
-
Skill(...)-Eintraege;
|
|
445
|
+
Skill(...)-Eintraege; koolie-ticket fehlte, und der Validator meldete 0 Fehler.
|
|
446
446
|
Ein nicht genannter Aufruf faellt in den Rueckfragekorb und im
|
|
447
447
|
rueckfragefreien Betrieb in die Abweisung - die Sitzung liest die SKILL.md dann
|
|
448
448
|
ersatzweise als Datei, OHNE die Werkzeugbeschraenkung des Skills (D-81).
|
|
@@ -853,7 +853,14 @@ Prüft (statisch, ohne laufenden KI-Client):
|
|
|
853
853
|
ANLASS: pip, npm und Chocolatey geben dem Installationsschritt kein Terminal
|
|
854
854
|
(gemessen 2026-09-30). GRENZE: ob eine Paketquelle dem Befehl ein Terminal gibt
|
|
855
855
|
(gemessen, nicht geprueft); die Veroeffentlichung
|
|
856
|
-
|
|
856
|
+
113. Keine Kennung in der Produktdokumentation (D-540), nur im Quellrepositorium: Fehler
|
|
857
|
+
je Markdown-Datei, die eine Kennung der Form CR-JJJJ-NNN, D-N oder K-N ausserhalb der
|
|
858
|
+
Nachweisschicht nennt. Nachweisschicht sind CHANGELOG, Decision Log, Roadmap,
|
|
859
|
+
Aenderungsantraege, Protokolle, Erhebungen und build/, in einem Produkttraeger die
|
|
860
|
+
Ergebnis- und Belegspalten der Testblaetter und Grenzfaelle, die Belegspalte der Faehigkeitsmatrix und
|
|
861
|
+
die Zeilen eines Versionsverlaufs. ANLASS: Rueckmeldung zum oeffentlichen
|
|
862
|
+
Repositorium (2026-10-02). GRENZE: die Kennung, nicht die Begruendungsprosa
|
|
863
|
+
Der Wirksamkeitsnachweis nach D-23 fuer die Pruefungen 4, 6, 8, 14, 18 bis 66 und 68 bis 113 laeuft als eigenes
|
|
857
864
|
Skript: .koolie/core/tests/scripts/probe-pruefungen.py (je Pruefung eine Sonde und eine
|
|
858
865
|
Gegenprobe, auf einer Kopie des Repositoriums).
|
|
859
866
|
|
|
@@ -926,7 +933,8 @@ from pruefungen.dokumente import ( # noqa: E402
|
|
|
926
933
|
check_altname_restbestand, check_bestandsliste_stand, check_chronikspanne,
|
|
927
934
|
check_dokumentform, check_dokumentstand, check_dokumentzahlen,
|
|
928
935
|
check_gegenzeichnung, check_lizenz, check_rechtschreibung, check_steckbrief,
|
|
929
|
-
check_verirrtes_steuerzeichen, check_zeilenendeform,
|
|
936
|
+
check_kennungen_in_produktdoku, check_verirrtes_steuerzeichen, check_zeilenendeform,
|
|
937
|
+
check_zielangabe)
|
|
930
938
|
from pruefungen.werkzeuge import ( # noqa: E402
|
|
931
939
|
check_arbeitsplatzpfad, check_bytecode_versioniert, check_erhebungen_sauber,
|
|
932
940
|
check_gitignore_erzeugnisse, check_kernlage, check_lieferumfang, check_paketquellen,
|
|
@@ -1078,6 +1086,7 @@ def main() -> int:
|
|
|
1078
1086
|
check_skill_werkzeugfelder(root, man)
|
|
1079
1087
|
check_fremde_skills(root, man)
|
|
1080
1088
|
check_paketquellen(root)
|
|
1089
|
+
check_kennungen_in_produktdoku(root)
|
|
1081
1090
|
if args.strict_overlay:
|
|
1082
1091
|
check_strict_overlay(root, man)
|
|
1083
1092
|
check_platzhalterbindung(root, man)
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
validate-output.py – Prüft eine Ausgabe des KI-Clients gegen das Ausgabeformat eines Skills.
|
|
4
4
|
|
|
5
5
|
Aufruf:
|
|
6
|
-
python3 .koolie/core/tests/scripts/validate-output.py --skill
|
|
6
|
+
python3 .koolie/core/tests/scripts/validate-output.py --skill koolie-repo-analyze [--file ausgabe.md]
|
|
7
7
|
(ohne --file wird die Ausgabe von stdin gelesen)
|
|
8
8
|
|
|
9
9
|
Prüft:
|
package/CONTRIBUTING.md
CHANGED
|
@@ -53,12 +53,12 @@ Pack** – das [Laufzeitglossar](.koolie/core/docs/RUNTIME_GLOSSARY.md) löst je
|
|
|
53
53
|
├── <Wurzel-Anweisungsdatei> # Agentenanweisung (aus dem Kern installiert)
|
|
54
54
|
├── <Laufzeitschicht>/ # vollständig erzeugt – nie von Hand schreiben
|
|
55
55
|
│ ├── <Berechtigungsdatei> # Kernregeln + Projektwerte (je Pack: samt Hooks)
|
|
56
|
-
│ ├── agents/
|
|
56
|
+
│ ├── agents/koolie-reviewer.md # nur lesendes Review-Subagentenprofil
|
|
57
57
|
│ ├── rules/00-, 10-, 15-*.md # Core-Kurzfassungen ....... aus dem Kern
|
|
58
58
|
│ ├── rules/20-project-overlay.md # Overlay-Laufzeitfassung ... Projekt
|
|
59
59
|
│ ├── rules/2N-overlay-*.md # Overlay-Regelerweiterungen Projekt
|
|
60
60
|
│ ├── rules/30-, 40-*.md # aktivierte Packs
|
|
61
|
-
│ └── skills/
|
|
61
|
+
│ └── skills/koolie-*, prj-* # Koolie (Kern, aktivierte Packs) | Projekt
|
|
62
62
|
│
|
|
63
63
|
├── .koolie/
|
|
64
64
|
│ ├── core/ # DER KERN: unveränderlich, byte-gleich
|
|
@@ -109,11 +109,17 @@ ein offener Klärungspunkt, `CR-…` ein Änderungsantrag unter `.koolie/core/go
|
|
|
109
109
|
|
|
110
110
|
## Konventionen
|
|
111
111
|
|
|
112
|
-
Verbindlichkeit über
|
|
113
|
-
`[DOK]
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
112
|
+
- **Verbindlichkeit** über MUSS, SOLL, KANN und DARF NICHT.
|
|
113
|
+
- **Belegstatus:** Eine produktbezogene Aussage trägt `[DOK]`, `[EMPF]`, `[KONZ]` oder `BELEG OFFEN` mit Grund
|
|
114
|
+
und Datum.
|
|
115
|
+
- **Platzhalter:** Variable Inhalte stehen nur als registrierte Platzhalter
|
|
116
|
+
([`PLACEHOLDER_REGISTRY.md`](.koolie/core/docs/PLACEHOLDER_REGISTRY.md)). Beispiele sind als synthetisch
|
|
117
|
+
gekennzeichnet, und genannt werden Rollen, keine Personen.
|
|
118
|
+
- **Skillnamen:** Mitgelieferte Skills heißen `koolie-<name>`, eindeutig über alle Packs; `prj-<name>` gehört
|
|
119
|
+
dem Projekt.
|
|
120
|
+
- **Schreiben:** Die Produktdokumentation sagt, was gilt und was zu tun ist – ohne `CR-`, `D-` oder
|
|
121
|
+
`K-`-Kennung und ohne Entscheidungsgeschichte. Begründungen gehören in Änderungsantrag und Decision Log.
|
|
122
|
+
Die Regeln stehen im [Dokumentationsstandard](.koolie/core/docs/DOCUMENTATION_STANDARD.md), Abschnitt 3;
|
|
123
|
+
der Validator meldet eine Kennung am falschen Ort.
|
|
124
|
+
- **Lizenz an zwei Stellen:** in der Wurzel und unter `.koolie/core/LICENSE`, weil ein Projekt nur den Kern
|
|
125
|
+
kopiert und ein Werk nicht ohne seine Lizenz weitergegeben werden darf. Der Validator hält beide gleich.
|
package/QUICKSTART.en.md
CHANGED
|
@@ -5,25 +5,24 @@ documentation is in German and marked (German).*
|
|
|
5
5
|
|
|
6
6
|
This quickstart installs Koolie into an **empty practice repository** and shows what is created. It does not
|
|
7
7
|
start an AI client and does not change any existing project. The client pack `claude-code` serves as the
|
|
8
|
-
example;
|
|
8
|
+
example; the other packs work the same way.
|
|
9
9
|
|
|
10
|
-
|
|
11
|
-
|
|
10
|
+
For an **existing** project, read the [adoption guide](.koolie/core/docs/ADOPTION_GUIDE.md) (German)
|
|
11
|
+
afterwards. If you are new to a project that already uses Koolie, start with the
|
|
12
12
|
[onboarding quick start](.koolie/core/onboarding/QUICKSTART.md) (German).
|
|
13
13
|
|
|
14
14
|
## Prerequisites
|
|
15
15
|
|
|
16
|
-
- **Git** and **Python 3.8 or later
|
|
17
|
-
use that instead of `python` in all commands
|
|
18
|
-
- A command line with a POSIX shell
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
- **
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
`python -m koolie`.
|
|
16
|
+
- **Git** and **Python 3.8 or later**, no additional packages. If Python is called `python3` on your system,
|
|
17
|
+
use that instead of `python` in all commands.
|
|
18
|
+
- A command line with a POSIX shell, on Windows for example Git Bash.
|
|
19
|
+
- Koolie itself, in one of two ways:
|
|
20
|
+
- **from a package source:** `uvx koolie` (or `pipx run koolie`, `npx @renoxar/koolie`). It replaces
|
|
21
|
+
`python .koolie/core/install.py` in steps 2 and 3, and you can start from any directory. If you used
|
|
22
|
+
`pip install koolie` and `koolie` is not found, run `python -m koolie`.
|
|
23
|
+
- **from the unpacked release archive or a clone:** steps 1 to 4 then run from its root directory. Instead
|
|
24
|
+
of step 2 you can also use the starters `install.cmd` (Windows) and `install.command` (macOS); they ask
|
|
25
|
+
for the same information.
|
|
27
26
|
|
|
28
27
|
All output of the installer and the validator is in German; this guide quotes the lines you need.
|
|
29
28
|
|
|
@@ -43,18 +42,15 @@ git -C ../koolie-uebung commit -m "Start"
|
|
|
43
42
|
python .koolie/core/install.py --target ../koolie-uebung --client claude-code
|
|
44
43
|
```
|
|
45
44
|
|
|
46
|
-
From a package source
|
|
47
|
-
|
|
48
|
-
the default.
|
|
45
|
+
From a package source: `uvx koolie --target ../koolie-uebung --client claude-code`. Without arguments,
|
|
46
|
+
`uvx koolie` opens a dialog with the current directory as the default.
|
|
49
47
|
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
German.
|
|
48
|
+
The installer copies the core (`.koolie/core/`) into the practice repository, creates the files the client
|
|
49
|
+
needs and lists the next steps for a real project at the end.
|
|
53
50
|
|
|
54
|
-
⚠️ On Windows, no
|
|
55
|
-
installer stops before the first copy
|
|
56
|
-
|
|
57
|
-
`/c/koolie-uebung`.
|
|
51
|
+
⚠️ On Windows, no path may exceed 259 characters. If the practice repository is nested too deeply, the
|
|
52
|
+
installer stops before the first copy. Choose a shorter location, in Git Bash for example `/c/koolie-uebung`,
|
|
53
|
+
and use it instead of `../koolie-uebung` in all commands.
|
|
58
54
|
|
|
59
55
|
## Step 3: Choose a different client (optional)
|
|
60
56
|
|
|
@@ -62,30 +58,30 @@ shorter location and replace `../koolie-uebung` with it in all commands – in G
|
|
|
62
58
|
python .koolie/core/install.py --list-clients
|
|
63
59
|
```
|
|
64
60
|
|
|
65
|
-
shows the available client packs. What each client enforces technically is
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
61
|
+
shows the available client packs. What each client enforces technically is summarised in the
|
|
62
|
+
[overview of the client packs](.koolie/core/clients/README.md) (German), section 6; which files a pack creates
|
|
63
|
+
is listed in the [runtime glossary](.koolie/core/docs/RUNTIME_GLOSSARY.md) (German). For this quickstart,
|
|
64
|
+
`claude-code` is enough.
|
|
69
65
|
|
|
70
66
|
## Step 4: Look at what was created
|
|
71
67
|
|
|
72
68
|
| Path in the practice repository | What it is |
|
|
73
69
|
|---|---|
|
|
74
|
-
| `CLAUDE.md` | the **instruction file** the client loads at start – with
|
|
75
|
-
| `.claude/settings.json` | the **permission file**: what the client blocks
|
|
76
|
-
| `.claude/rules/`, `.claude/skills/`, `.claude/agents/` | short versions of the rules, the
|
|
70
|
+
| `CLAUDE.md` | the **instruction file** the client loads at start – with Koolie's rules, for example *"Never: `git push` …"* (in German) |
|
|
71
|
+
| `.claude/settings.json` | the **permission file**: what the client blocks (`deny`), asks about (`ask`) or may do without asking (`allow`), plus the hooks |
|
|
72
|
+
| `.claude/rules/`, `.claude/skills/`, `.claude/agents/` | short versions of the rules, the skills (`/koolie-plan` and others) and a read-only review profile |
|
|
77
73
|
| `.koolie/core/` | the **core** – identical in every project, never edit by hand |
|
|
78
74
|
| `.koolie/project-overlay/` | the **project overlay** – the project configuration the team fills in |
|
|
79
75
|
|
|
80
|
-
The
|
|
81
|
-
|
|
76
|
+
The block on `git push` from the [README](README.en.md#what-is-enforced--and-what-is-not) is in the
|
|
77
|
+
permission file:
|
|
82
78
|
|
|
83
79
|
```bash
|
|
84
80
|
grep -n "git push" ../koolie-uebung/.claude/settings.json
|
|
85
81
|
```
|
|
86
82
|
|
|
87
|
-
|
|
88
|
-
`_core_rules_integrity.deny_must_contain`,
|
|
83
|
+
`Bash(git push:*)` appears twice: in `permissions.deny`, where the client reads the block, and in
|
|
84
|
+
`_core_rules_integrity.deny_must_contain`, which the validator checks the file against.
|
|
89
85
|
|
|
90
86
|
## Step 5: Commit and check
|
|
91
87
|
|
|
@@ -98,8 +94,8 @@ python .koolie/core/tests/scripts/validate-framework.py
|
|
|
98
94
|
```
|
|
99
95
|
|
|
100
96
|
**Expected:** `Ergebnis: 0 Fehler, 0 Warnungen` (result: 0 errors, 0 warnings). Among other things, the
|
|
101
|
-
validator checks that the core rules of the permission file are complete. The `.gitignore`
|
|
102
|
-
|
|
97
|
+
validator checks that the core rules of the permission file are complete. The `.gitignore` keeps the tools'
|
|
98
|
+
Python bytecode out of the repository; without it you get a warning.
|
|
103
99
|
|
|
104
100
|
## Step 6: See what is missing for real use
|
|
105
101
|
|
|
@@ -107,29 +103,26 @@ because the core's tools create Python bytecode on every run; without it, the va
|
|
|
107
103
|
python .koolie/core/tests/scripts/validate-framework.py --check-overlay-ready
|
|
108
104
|
```
|
|
109
105
|
|
|
110
|
-
**Expected:** several
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
values a project has to enter and who approves them is described in the
|
|
106
|
+
**Expected:** several `FEHLER` (error) lines with `enthält offene <TBD>-Werte` (contains open `<TBD>` values)
|
|
107
|
+
for files under `.koolie/project-overlay/` and for the overlay rule in `.claude/rules/`. That is correct: the
|
|
108
|
+
overlay is still empty. Until it is filled in, reviewed and active, the agent works read-only in the project.
|
|
109
|
+
Which values a project enters and who approves them is described in the
|
|
115
110
|
[adoption guide](.koolie/core/docs/ADOPTION_GUIDE.md) (German).
|
|
116
111
|
|
|
117
112
|
## Step 7: Run the client against it (optional)
|
|
118
113
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
matrix names its limit.
|
|
114
|
+
With Claude Code installed, you can start a session in the practice repository and ask the assistant to push
|
|
115
|
+
a commit. **Expected:** it declines; if it tries anyway, the client rejects the call. This was measured with
|
|
116
|
+
Claude Code 2.1.274 ([protocol](.koolie/core/tests/protocols/2026-09-17-sitzungstest-schranken.md), German)
|
|
117
|
+
and has not been re-checked for this quickstart. A model can behave differently – that is exactly what the
|
|
118
|
+
technical block is for.
|
|
125
119
|
|
|
126
120
|
## Clean up
|
|
127
121
|
|
|
128
|
-
The practice repository can be deleted afterwards
|
|
129
|
-
`../koolie-uebung`.
|
|
122
|
+
The practice repository `../koolie-uebung` can be deleted afterwards.
|
|
130
123
|
|
|
131
124
|
## Next steps
|
|
132
125
|
|
|
133
|
-
- [README](README.en.md): what Koolie is, who it is for
|
|
126
|
+
- [README](README.en.md): what Koolie is, who it is for and which clients it supports.
|
|
134
127
|
- [Adoption guide](.koolie/core/docs/ADOPTION_GUIDE.md) (German): taking Koolie into an existing project, updates, costs, deployment architecture and coexistence with another agent framework.
|
|
135
128
|
- [Overview of the client packs](.koolie/core/clients/README.md) (German): capability matrices and their evidence.
|
package/QUICKSTART.md
CHANGED
|
@@ -4,25 +4,24 @@
|
|
|
4
4
|
|
|
5
5
|
Dieser Quickstart installiert Koolie in ein **leeres Übungs-Repository** und zeigt, was dabei entsteht. Er
|
|
6
6
|
startet keinen KI-Client und verändert kein bestehendes Projekt. Als Beispiel dient das Client Pack
|
|
7
|
-
`claude-code`;
|
|
7
|
+
`claude-code`; die anderen Packs funktionieren genauso.
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
Für ein **bestehendes** Projekt gilt danach der [Übernahmeleitfaden](.koolie/core/docs/ADOPTION_GUIDE.md).
|
|
10
|
+
Wer in einem Projekt neu ist, das Koolie schon nutzt, beginnt mit dem
|
|
11
|
+
[Quick-Start des Onboardings](.koolie/core/onboarding/QUICKSTART.md).
|
|
12
12
|
|
|
13
13
|
## Voraussetzungen
|
|
14
14
|
|
|
15
|
-
- **Git** und **Python ab 3.8
|
|
16
|
-
Befehlen
|
|
17
|
-
- Eine Kommandozeile mit POSIX-Shell
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
- **
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
`pip install koolie` installiert und `koolie` danach nicht findet, ruft `python -m koolie` auf.
|
|
15
|
+
- **Git** und **Python ab 3.8**, ohne Zusatzpakete. Heißt der Aufruf auf deinem System `python3`, nimm ihn
|
|
16
|
+
in allen Befehlen statt `python`.
|
|
17
|
+
- Eine Kommandozeile mit POSIX-Shell, unter Windows zum Beispiel Git Bash.
|
|
18
|
+
- Koolie selbst, auf einem von zwei Wegen:
|
|
19
|
+
- **über eine Paketquelle:** `uvx koolie` (oder `pipx run koolie`, `npx @renoxar/koolie`). Es ersetzt in
|
|
20
|
+
den Schritten 2 und 3 den Aufruf `python .koolie/core/install.py`, und du kannst aus jedem Verzeichnis
|
|
21
|
+
starten. Wer `pip install koolie` nutzt und `koolie` danach nicht findet, ruft `python -m koolie` auf.
|
|
22
|
+
- **aus dem entpackten Release-Archiv oder einem Klon:** Die Schritte 1 bis 4 laufen dann aus dessen
|
|
23
|
+
Wurzelverzeichnis. Statt Schritt 2 gehen auch die Starter `install.cmd` (Windows) und `install.command`
|
|
24
|
+
(macOS); sie fragen dieselben Angaben ab.
|
|
26
25
|
|
|
27
26
|
## Schritt 1: Ein Übungs-Repository anlegen
|
|
28
27
|
|
|
@@ -40,15 +39,15 @@ git -C ../koolie-uebung commit -m "Start"
|
|
|
40
39
|
python .koolie/core/install.py --target ../koolie-uebung --client claude-code
|
|
41
40
|
```
|
|
42
41
|
|
|
43
|
-
Über eine Paketquelle
|
|
44
|
-
|
|
42
|
+
Über eine Paketquelle: `uvx koolie --target ../koolie-uebung --client claude-code`. Ohne Argumente startet
|
|
43
|
+
`uvx koolie` einen Dialog mit dem aktuellen Verzeichnis als Vorgabe.
|
|
45
44
|
|
|
46
|
-
|
|
47
|
-
|
|
45
|
+
Der Installer kopiert den Kern (`.koolie/core/`) ins Übungs-Repository, legt die Dateien an, die der Client
|
|
46
|
+
braucht, und nennt am Ende die nächsten Schritte für ein echtes Projekt.
|
|
48
47
|
|
|
49
|
-
⚠️ Unter Windows darf kein
|
|
50
|
-
|
|
51
|
-
|
|
48
|
+
⚠️ Unter Windows darf kein Pfad länger als 259 Zeichen werden. Liegt das Übungs-Repository zu tief, hält der
|
|
49
|
+
Installer vor der ersten Kopie an. Dann einen kürzeren Ort wählen, in Git Bash etwa `/c/koolie-uebung`, und
|
|
50
|
+
ihn in allen Befehlen statt `../koolie-uebung` einsetzen.
|
|
52
51
|
|
|
53
52
|
## Schritt 3: Einen anderen Client wählen (optional)
|
|
54
53
|
|
|
@@ -56,30 +55,29 @@ wählen und `../koolie-uebung` in allen Befehlen durch ihn ersetzen, in Git Bash
|
|
|
56
55
|
python .koolie/core/install.py --list-clients
|
|
57
56
|
```
|
|
58
57
|
|
|
59
|
-
zeigt die verfügbaren Client Packs.
|
|
60
|
-
[Übersicht der Client Packs](.koolie/core/clients/README.md), Abschnitt 6
|
|
61
|
-
für `claude-code`; welche Dateien ein anderes Pack anlegt, nennt das
|
|
58
|
+
zeigt die verfügbaren Client Packs. Was jeder Client technisch durchsetzt, steht in der
|
|
59
|
+
[Übersicht der Client Packs](.koolie/core/clients/README.md), Abschnitt 6; welche Dateien ein Pack anlegt, im
|
|
62
60
|
[Laufzeitglossar](.koolie/core/docs/RUNTIME_GLOSSARY.md). Für diesen Quickstart genügt `claude-code`.
|
|
63
61
|
|
|
64
62
|
## Schritt 4: Ansehen, was entstanden ist
|
|
65
63
|
|
|
66
64
|
| Pfad im Übungs-Repository | Was es ist |
|
|
67
65
|
|---|---|
|
|
68
|
-
| `CLAUDE.md` | die **Anweisungsdatei**, die der Client beim Start lädt – mit den Regeln
|
|
69
|
-
| `.claude/settings.json` | die **Berechtigungsdatei**:
|
|
70
|
-
| `.claude/rules/`, `.claude/skills/`, `.claude/agents/` | Kurzfassungen der Regeln, die Skills
|
|
66
|
+
| `CLAUDE.md` | die **Anweisungsdatei**, die der Client beim Start lädt – mit den Regeln von Koolie, zum Beispiel *„Nie: `git push` …“* |
|
|
67
|
+
| `.claude/settings.json` | die **Berechtigungsdatei**: was der Client verweigert (`deny`), erfragt (`ask`) oder ohne Rückfrage darf (`allow`), dazu die Hooks |
|
|
68
|
+
| `.claude/rules/`, `.claude/skills/`, `.claude/agents/` | Kurzfassungen der Regeln, die Skills (`/koolie-plan` und andere) und ein nur lesendes Review-Profil |
|
|
71
69
|
| `.koolie/core/` | der **Kern** – in jedem Projekt gleich, nie von Hand ändern |
|
|
72
70
|
| `.koolie/project-overlay/` | das **Project Overlay** – die Projektkonfiguration, die das Team ausfüllt |
|
|
73
71
|
|
|
74
|
-
Die
|
|
75
|
-
|
|
72
|
+
Die Sperre für `git push` aus der [README](README.md#was-durchgesetzt-wird--und-was-nicht) steht in der
|
|
73
|
+
Berechtigungsdatei:
|
|
76
74
|
|
|
77
75
|
```bash
|
|
78
76
|
grep -n "git push" ../koolie-uebung/.claude/settings.json
|
|
79
77
|
```
|
|
80
78
|
|
|
81
|
-
|
|
82
|
-
`_core_rules_integrity.deny_must_contain`,
|
|
79
|
+
`Bash(git push:*)` erscheint zweimal: in `permissions.deny`, wo der Client die Sperre liest, und in
|
|
80
|
+
`_core_rules_integrity.deny_must_contain`, wogegen der Validator die Datei prüft.
|
|
83
81
|
|
|
84
82
|
## Schritt 5: Den Stand festhalten und prüfen
|
|
85
83
|
|
|
@@ -91,9 +89,9 @@ cd ../koolie-uebung
|
|
|
91
89
|
python .koolie/core/tests/scripts/validate-framework.py
|
|
92
90
|
```
|
|
93
91
|
|
|
94
|
-
**Erwartet:** `Ergebnis: 0 Fehler, 0 Warnungen`. Der Validator prüft unter anderem,
|
|
95
|
-
Berechtigungsdatei vollständig sind. Die `.gitignore`
|
|
96
|
-
|
|
92
|
+
**Erwartet:** `Ergebnis: 0 Fehler, 0 Warnungen`. Der Validator prüft unter anderem, ob die Kernregeln der
|
|
93
|
+
Berechtigungsdatei vollständig sind. Die `.gitignore` hält den Python-Bytecode der Werkzeuge aus dem
|
|
94
|
+
Repository; ohne sie gibt es eine Warnung.
|
|
97
95
|
|
|
98
96
|
## Schritt 6: Sehen, was für den echten Einsatz fehlt
|
|
99
97
|
|
|
@@ -101,29 +99,25 @@ Python-Bytecode erzeugen; ohne sie meldet der Validator eine Warnung.
|
|
|
101
99
|
python .koolie/core/tests/scripts/validate-framework.py --check-overlay-ready
|
|
102
100
|
```
|
|
103
101
|
|
|
104
|
-
**Erwartet:** mehrere
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
ein Projekt eintragen muss und wer sie freigibt, beschreibt der
|
|
109
|
-
[Übernahmeleitfaden](.koolie/core/docs/ADOPTION_GUIDE.md).
|
|
102
|
+
**Erwartet:** mehrere `FEHLER` mit `enthält offene <TBD>-Werte` zu Dateien unter `.koolie/project-overlay/`
|
|
103
|
+
und zur Overlay-Regel in `.claude/rules/`. Das ist richtig so: Das Overlay ist noch leer. Bis es ausgefüllt,
|
|
104
|
+
geprüft und aktiv ist, arbeitet der Agent im Projekt nur lesend. Welche Werte ein Projekt einträgt und wer sie
|
|
105
|
+
freigibt, beschreibt der [Übernahmeleitfaden](.koolie/core/docs/ADOPTION_GUIDE.md).
|
|
110
106
|
|
|
111
107
|
## Schritt 7: Den Client dagegen laufen lassen (optional)
|
|
112
108
|
|
|
113
|
-
|
|
114
|
-
einen Commit zu pushen. **Erwartet
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
anders verhalten – deshalb gibt es die technische Sperre, und deshalb nennt die Fähigkeitsmatrix ihre Grenze.
|
|
109
|
+
Mit installiertem Claude Code kannst du im Übungs-Repository eine Sitzung starten und den Assistenten bitten,
|
|
110
|
+
einen Commit zu pushen. **Erwartet:** Er lehnt ab; versucht er es trotzdem, weist der Client den Aufruf
|
|
111
|
+
zurück. So wurde es mit Claude Code 2.1.274 gemessen
|
|
112
|
+
([Protokoll](.koolie/core/tests/protocols/2026-09-17-sitzungstest-schranken.md)); für diesen Quickstart ist es
|
|
113
|
+
nicht erneut geprüft. Ein Modell kann sich anders verhalten – genau dafür gibt es die technische Sperre.
|
|
119
114
|
|
|
120
115
|
## Aufräumen
|
|
121
116
|
|
|
122
|
-
Das Übungs-Repository kann danach gelöscht werden
|
|
123
|
-
`../koolie-uebung`.
|
|
117
|
+
Das Übungs-Repository `../koolie-uebung` kann danach gelöscht werden.
|
|
124
118
|
|
|
125
119
|
## Wie es weitergeht
|
|
126
120
|
|
|
127
|
-
- [README](README.md): was Koolie ist, für wen es gedacht ist
|
|
121
|
+
- [README](README.md): was Koolie ist, für wen es gedacht ist und welche Clients es unterstützt.
|
|
128
122
|
- [Übernahmeleitfaden](.koolie/core/docs/ADOPTION_GUIDE.md): Aufnahme in ein bestehendes Projekt, Aktualisierung, Kosten, Einsatzarchitektur und das Nebeneinander mit einem anderen Agenten-Rahmenwerk.
|
|
129
123
|
- [Übersicht der Client Packs](.koolie/core/clients/README.md): Fähigkeitsmatrizen und ihre Belege.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@renoxar/koolie",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "2.0.0",
|
|
4
4
|
"description": "Rules, skills and a protective hook for AI coding assistants - one rule source, installed per project.",
|
|
5
5
|
"license": "GPL-3.0-only",
|
|
6
6
|
"homepage": "https://github.com/Renoxar/koolie",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"engines": {
|
|
15
15
|
"node": ">=16"
|
|
16
16
|
},
|
|
17
|
-
"readme": "# Koolie\n\n**Governance for AI coding assistants \u2013 one rule source for every client, enforced technically wherever the client allows it.**\n\n[](https://pypi.org/project/koolie/)\n[](https://www.npmjs.com/package/@renoxar/koolie)\n[](https://github.com/Renoxar/koolie/blob/
|
|
17
|
+
"readme": "# Koolie\n\n**Governance for AI coding assistants \u2013 one rule source for every client, enforced technically wherever the client allows it.**\n\n[](https://pypi.org/project/koolie/)\n[](https://www.npmjs.com/package/@renoxar/koolie)\n[](https://github.com/Renoxar/koolie/blob/v2.0.0/LICENSE)\n\n*Deutsch: [README.md](https://github.com/Renoxar/koolie/blob/v2.0.0/README.md). The German documentation is authoritative; further documents are in German.*\n\nA team working with AI coding assistants needs more than an instruction file: shared rules for every\nassistant, technical blocks wherever a rule must not be broken, and clear points where a human decides.\nKoolie brings exactly that into an existing Git repository \u2013 and states openly, for each client, which rule\nit really enforces and which only acts as an instruction.\n\n## Quick start\n\nIn your project directory:\n\n```bash\nuvx koolie # or: pipx run koolie \u00b7 npx @renoxar/koolie\n```\n\nThe command fetches Koolie, offers the current directory as the project and asks for your AI client.\nAfterwards the project holds the instruction file, the permissions and a guard hook for that client. Without\na package registry, use the release archive and the starters `install.cmd` / `install.command`.\n\n**Want to try it first?** The [quickstart](https://github.com/Renoxar/koolie/blob/v2.0.0/QUICKSTART.en.md) installs Koolie into an empty practice repository\n\u2013 in ten minutes, without starting an AI client.\n\n## How it works\n\n```text\n Core .koolie/core/ Project overlay .koolie/project-overlay/\n rules, skills, checklists, paths, approval routes, project documents\n guard hook, validator \u2013 owned by the project\n \u2502 \u2502\n \u2514\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u252c\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2500\u2518\n \u25bc\n Client pack per AI client\n instruction file \u00b7 permissions \u00b7 hooks \u00b7 skills\n (e.g. CLAUDE.md and .claude/ for Claude Code)\n```\n\n- **One core for all clients.** Rules and skills are written once, tool-neutral; a team with mixed tools shares\n the same rules.\n- **The project stays in charge.** Project values live in the overlay. A new release updates a project with the\n same command: it detects the existing core and offers to upgrade it; the overlay is never touched.\n- **Control levels instead of trust.** The assistant handles small tasks on its own; from \"medium\" it needs a\n confirmed plan, at \"high\" an explicit approval.\n\n## What is enforced \u2013 and what is not\n\n| Kind of rule | What it means | Example |\n|---|---|---|\n| **Technical** | The client enforces it, whatever the model does | `git push` is blocked; secret files cannot be read |\n| **Instruction** | The rule is in the model's context; it can follow it | \"Do not change files outside the approved scope\" |\n| **Human** | Approvals, reviews, decisions | A person approves a release |\n\nEach client pack keeps a **capability matrix** that assigns every promise to one of these kinds \u2013 backed by a\nmeasurement on the client. Koolie complements a good standard setup (branch protection, CI, managed settings);\nit does not replace it.\n\n## Supported clients\n\n| Client | Pack | Status |\n|---|---|---|\n| Claude Code | [`claude-code`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/claude-code/CLIENT_PACK.md) | pilot |\n| Cursor | [`cursor`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/cursor/CLIENT_PACK.md) | pilot |\n| Devin Desktop | [`devin-desktop`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/devin-desktop/CLIENT_PACK.md) | pilot |\n| Kiro | [`kiro`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/kiro/CLIENT_PACK.md) | pilot |\n| OpenAI Codex CLI | [`openai-codex`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/openai-codex/CLIENT_PACK.md) | pilot, only with approval by the security officer |\n\n*Pilot* means: fully built, measured on real installations, meant for accompanied use. The limits of each\nclient are listed in its pack (German).\n\n## Who is it for?\n\n- **Development teams** that use AI assistants every day and want shared, verifiable rules.\n- **Technical leads** \u2013 team leads, architecture, security, data protection \u2013 who must show what a tool\n enforces technically.\n\nKoolie is not meant for running an agent fully autonomously without human approvals.\n\n## Documentation\n\n| Topic | Where |\n|---|---|\n| Try it in ten minutes | [`QUICKSTART.en.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/QUICKSTART.en.md) |\n| Adopt in a project, update, costs | [Adoption guide](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/docs/ADOPTION_GUIDE.md) (German) |\n| First day in a project that uses Koolie | [Onboarding](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/onboarding/QUICKSTART.md) (German) |\n| Client packs and capability matrices | [`clients/README.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/clients/README.md) (German) |\n| The rules themselves | [`framework/core/`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/framework/core/) (German) |\n| Changes and plans | [`CHANGELOG.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/CHANGELOG.md) \u00b7 [`ROADMAP.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/docs/ROADMAP.md) (German) |\n| Contributing to the framework | [`CONTRIBUTING.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/CONTRIBUTING.md) (German) |\n\n## Why \"Koolie\"?\n\nA Koolie is an Australian herding dog. It does not drive the herd and does not replace the shepherd \u2013 it keeps\nthe flock together, on course and within bounds. That is what this framework is meant to do with an AI\nassistant.\n\n## License\n\n[GPL-3.0](https://github.com/Renoxar/koolie/blob/v2.0.0/LICENSE) with an additional permission: files created from the templates and any output of the tools\nbelong to the project that creates them. Merely using Koolie \u2013 also commercially \u2013 puts no obligations on you;\nthe details are in [`LICENSE-HINWEIS.md`](https://github.com/Renoxar/koolie/blob/v2.0.0/.koolie/core/LICENSE-HINWEIS.md) (German).\nCopyright \u00a9 2026 `<FRAMEWORK_OWNER>`.\n",
|
|
18
18
|
"publishConfig": {
|
|
19
19
|
"access": "public"
|
|
20
20
|
}
|
package/paketquellen/README.md
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# Paketquellen
|
|
2
2
|
|
|
3
|
-
Dieser Ordner baut Koolie für Paketquellen
|
|
3
|
+
Dieser Ordner baut Koolie für Paketquellen. Veröffentlicht wird auf **PyPI** (`koolie`) und **npm** (`@renoxar/koolie`); das übernimmt der Workflow `.github/workflows/publish.yml` an der signierten Marke, nach Freigabe durch den Owner (`RELEASE_PROCESS.md` Abschnitt 4.2, Schritt 9). Scoop und Homebrew werden gebaut, aber nicht veröffentlicht.
|
|
4
4
|
|
|
5
5
|
| Datei | Zweck |
|
|
6
6
|
|---|---|
|
|
7
|
-
| `koolie_befehl.py` | Der Befehl `koolie`: ohne Argumente der Installationsdialog mit dem aktuellen Verzeichnis als Vorgabe
|
|
7
|
+
| `koolie_befehl.py` | Der Befehl `koolie`: ohne Argumente der Installationsdialog mit dem aktuellen Verzeichnis als Vorgabe, mit Argumenten `install.py`, davor das Banner; `koolie --version` |
|
|
8
8
|
| `koolie.cmd` | Hülle für Windows aus dem entpackten Release-Archiv (Scoop) |
|
|
9
9
|
| `npm/koolie.js` | Hülle für npm: sucht Python ab 3.8 und erbt das Terminal |
|
|
10
10
|
| `bauen.py` | Baut aus dem Release-Archiv Wheel, npm-Paket, Scoop-Manifest und Homebrew-Formel und prüft sie nach |
|
|
@@ -15,27 +15,27 @@ Dieser Ordner baut Koolie für Paketquellen (`CR-2026-168`, D-518 bis D-521). **
|
|
|
15
15
|
python paketquellen/bauen.py --archiv <koolie-X.Y.Z.tar.gz> --aus <ablage>
|
|
16
16
|
```
|
|
17
17
|
|
|
18
|
-
Das Archiv
|
|
18
|
+
Das Archiv entsteht nach `RELEASE_PROCESS.md` Abschnitt 4.1, Schritt 5. Die Manifeste laden vom GitHub-Release der Marke; `--url-basis` setzt eine andere Adresse, etwa einen lokalen Server.
|
|
19
19
|
|
|
20
|
-
|
|
20
|
+
Eine Vorabversion für TestPyPI (`<V>.devN`, npm `<V>-dev.N`) entsteht vor der Signatur aus dem Arbeitsbaum:
|
|
21
21
|
|
|
22
22
|
```
|
|
23
23
|
git -c core.eol=lf -c core.autocrlf=input archive --format=tar.gz --prefix=koolie-<V>/ -o <ablage>/koolie-<V>.tar.gz $(git stash create)
|
|
24
24
|
python paketquellen/bauen.py --archiv <ablage>/koolie-<V>.tar.gz --aus <ablage> --vorab 1
|
|
25
25
|
```
|
|
26
26
|
|
|
27
|
-
|
|
27
|
+
Als Beschreibung auf PyPI und npm dient `README.en.md`, mit absoluten Links auf die Marke im GitHub-Spiegel. npm bekommt sie über das Feld `readme` der `package.json`; die Dateien im Paket sind die des Archivs.
|
|
28
28
|
|
|
29
29
|
## Warum das Banner im Befehl steht
|
|
30
30
|
|
|
31
|
-
|
|
31
|
+
Beim Installieren aus einer Paketquelle gibt es kein verlässliches Terminal: pip führt nichts aus, npm verschluckt die Ausgabe, Chocolatey gibt kein Terminal. Der Befehl `koolie` läuft dagegen immer im Terminal des Nutzers – und erst er bringt Koolie ins Projekt.
|
|
32
32
|
|
|
33
33
|
## Stand je Paketquelle
|
|
34
34
|
|
|
35
35
|
| Paketquelle | Stand |
|
|
36
36
|
|---|---|
|
|
37
|
-
| PyPI (pip, pipx, uv) |
|
|
38
|
-
| npm | als `@renoxar/koolie`
|
|
39
|
-
| Scoop | gebaut, lokal
|
|
40
|
-
| Homebrew | gebaut, nicht
|
|
41
|
-
| Chocolatey, winget |
|
|
37
|
+
| PyPI (pip, pipx, uv) | veröffentlicht als `koolie` |
|
|
38
|
+
| npm | veröffentlicht als `@renoxar/koolie` – der Name `koolie` ist auf npm gesperrt |
|
|
39
|
+
| Scoop | gebaut, lokal geprüft (`7zip` wird mitinstalliert), nicht veröffentlicht |
|
|
40
|
+
| Homebrew | gebaut, nicht geprüft, nicht veröffentlicht |
|
|
41
|
+
| Chocolatey, winget | nicht geplant |
|