@renoxar/koolie 1.25.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/.gitattributes +16 -0
- package/.gitignore +51 -0
- package/.koolie/QUELLREPOSITORIUM.md +18 -0
- package/.koolie/core/CHANGELOG.md +11832 -0
- package/.koolie/core/LICENSE +674 -0
- package/.koolie/core/LICENSE-HINWEIS.md +98 -0
- package/.koolie/core/OWNERS.md +36 -0
- package/.koolie/core/VERSION +1 -0
- package/.koolie/core/banner.py +397 -0
- package/.koolie/core/build/README.md +34 -0
- package/.koolie/core/build/assemble.py +354 -0
- package/.koolie/core/build/build-docx.py +194 -0
- package/.koolie/core/build/doc/00-kopf.md +18 -0
- package/.koolie/core/build/doc/01-executive-summary.md +24 -0
- package/.koolie/core/build/doc/02-zielbild.md +13 -0
- package/.koolie/core/build/doc/03-ziele-nichtziele.md +28 -0
- package/.koolie/core/build/doc/04-geltungsbereich.md +25 -0
- package/.koolie/core/build/doc/05-glossar.md +47 -0
- package/.koolie/core/build/doc/06-leitprinzipien.md +5 -0
- package/.koolie/core/build/doc/07-architektur.md +60 -0
- package/.koolie/core/build/doc/07a-abbildungsschicht.md +66 -0
- package/.koolie/core/build/doc/08-trennung.md +24 -0
- package/.koolie/core/build/doc/09-betriebsmodi.md +18 -0
- package/.koolie/core/build/doc/10-arbeitsablauf.md +5 -0
- package/.koolie/core/build/doc/11-datenschutz.md +5 -0
- package/.koolie/core/build/doc/12-sicherheit.md +5 -0
- package/.koolie/core/build/doc/13-risiko.md +5 -0
- package/.koolie/core/build/doc/14-rollen.md +9 -0
- package/.koolie/core/build/doc/15-referenzstruktur.md +124 -0
- package/.koolie/core/build/doc/16-agentenanweisung.md +8 -0
- package/.koolie/core/build/doc/17-overlay.md +29 -0
- package/.koolie/core/build/doc/18-skill-standard.md +5 -0
- package/.koolie/core/build/doc/19-skill-template.md +5 -0
- package/.koolie/core/build/doc/20-referenz-skills.md +70 -0
- package/.koolie/core/build/doc/21-prompts.md +53 -0
- package/.koolie/core/build/doc/22-checklisten.md +49 -0
- package/.koolie/core/build/doc/23-entscheidungsbaeume.md +29 -0
- package/.koolie/core/build/doc/24-onboarding.md +33 -0
- package/.koolie/core/build/doc/25-governance.md +35 -0
- package/.koolie/core/build/doc/26-qs-test.md +9 -0
- package/.koolie/core/build/doc/27-pilot.md +13 -0
- package/.koolie/core/build/doc/28-uebernahme.md +5 -0
- package/.koolie/core/build/doc/29-grenzen.md +87 -0
- package/.koolie/core/build/doc/30-roadmap.md +5 -0
- package/.koolie/core/build/doc/31-anhaenge.md +151 -0
- package/.koolie/core/build/doc/32-abschluss.md +92 -0
- package/.koolie/core/build/ref-a4.docx +0 -0
- package/.koolie/core/checklists/01-preflight.md +54 -0
- package/.koolie/core/checklists/02-privacy-context.md +51 -0
- package/.koolie/core/checklists/03-before-code-change.md +51 -0
- package/.koolie/core/checklists/04-review-ai-code.md +58 -0
- package/.koolie/core/checklists/05-testing.md +48 -0
- package/.koolie/core/checklists/06-security.md +50 -0
- package/.koolie/core/checklists/07-new-dependency.md +57 -0
- package/.koolie/core/checklists/08-merge-request.md +47 -0
- package/.koolie/core/checklists/09-onboarding.md +52 -0
- package/.koolie/core/checklists/10-project-adoption.md +74 -0
- package/.koolie/core/checklists/11-framework-release.md +71 -0
- package/.koolie/core/checklists/README.md +28 -0
- package/.koolie/core/clientmap.py +1358 -0
- package/.koolie/core/clients/README.md +113 -0
- package/.koolie/core/clients/_template/CLIENT_PACK.md +197 -0
- package/.koolie/core/clients/claude-code/CLIENT_PACK.md +383 -0
- package/.koolie/core/clients/claude-code/manifest.json +232 -0
- package/.koolie/core/clients/claude-code/root-template/.claude/README.md +127 -0
- package/.koolie/core/clients/cursor/CLIENT_PACK.md +229 -0
- package/.koolie/core/clients/cursor/manifest.json +330 -0
- package/.koolie/core/clients/cursor/root-template/.cursor/README.md +36 -0
- package/.koolie/core/clients/devin-desktop/CLIENT_PACK.md +251 -0
- package/.koolie/core/clients/devin-desktop/manifest.json +163 -0
- package/.koolie/core/clients/devin-desktop/root-template/.devin/README.md +79 -0
- package/.koolie/core/clients/kiro/CLIENT_PACK.md +223 -0
- package/.koolie/core/clients/kiro/manifest.json +300 -0
- package/.koolie/core/clients/kiro/root-template/.kiro/README.md +37 -0
- package/.koolie/core/clients/openai-codex/CLIENT_PACK.md +257 -0
- package/.koolie/core/clients/openai-codex/manifest.json +208 -0
- package/.koolie/core/clients/openai-codex/root-template/.codex/README.md +35 -0
- package/.koolie/core/decision-trees/01-context-allowed.md +46 -0
- package/.koolie/core/decision-trees/02-may-ai-do-task.md +47 -0
- package/.koolie/core/decision-trees/03-analyze-or-modify.md +50 -0
- package/.koolie/core/decision-trees/04-required-review.md +49 -0
- package/.koolie/core/decision-trees/05-stop-or-escalate.md +47 -0
- package/.koolie/core/decision-trees/06-rule-placement.md +58 -0
- package/.koolie/core/decision-trees/README.md +14 -0
- package/.koolie/core/docs/ADOPTION_GUIDE.md +582 -0
- package/.koolie/core/docs/DOCUMENTATION_STANDARD.md +91 -0
- package/.koolie/core/docs/PLACEHOLDER_REGISTRY.md +79 -0
- package/.koolie/core/docs/ROADMAP.md +848 -0
- package/.koolie/core/docs/RUNTIME_GLOSSARY.md +113 -0
- package/.koolie/core/examples/README.md +11 -0
- package/.koolie/core/examples/example-ergebnisbericht.md +31 -0
- package/.koolie/core/examples/example-mr-description.md +31 -0
- package/.koolie/core/examples/example-overlay-runtime.md +48 -0
- package/.koolie/core/framework/core/00-principles.md +93 -0
- package/.koolie/core/framework/core/01-governance.md +58 -0
- package/.koolie/core/framework/core/02-privacy.md +141 -0
- package/.koolie/core/framework/core/03-security.md +86 -0
- package/.koolie/core/framework/core/04-quality.md +48 -0
- package/.koolie/core/framework/core/05-working-model.md +199 -0
- package/.koolie/core/framework/core/06-prompting-rules.md +51 -0
- package/.koolie/core/framework/core/07-review-rules.md +52 -0
- package/.koolie/core/framework/core/08-skill-conventions.md +115 -0
- package/.koolie/core/framework/core/09-risk-model.md +87 -0
- package/.koolie/core/framework/core/10-error-escalation.md +53 -0
- package/.koolie/core/framework/org-policies/MAPPING_CLASSIFICATION.md +16 -0
- package/.koolie/core/framework/org-policies/README.md +29 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/branching-strategy/muster-general.md +43 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/coding-guidelines/muster-general.md +82 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-done/muster-general.md +52 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/definition-of-ready/muster-general.md +54 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/quality/muster-general.md +59 -0
- package/.koolie/core/framework/overlay-patterns/general/documents/security/muster-general.md +52 -0
- package/.koolie/core/framework/overlay-patterns/general.md +150 -0
- package/.koolie/core/framework/role-packs/README.md +63 -0
- package/.koolie/core/framework/role-packs/_template/ROLE_PACK.md +58 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/ROLE_PACK.md +158 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/runtime/30-role-requirements-engineering.md +88 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/CHANGELOG.md +10 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/EXAMPLES.md +148 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/SKILL.md +195 -0
- package/.koolie/core/framework/role-packs/requirements-engineering/skills/role-re-ticket/TESTS.md +22 -0
- package/.koolie/core/framework/role-packs/software-development/ROLE_PACK.md +95 -0
- package/.koolie/core/framework/role-packs/software-development/runtime/30-role-software-development.md +26 -0
- package/.koolie/core/framework/runtime/agents/fw-reviewer.md +34 -0
- package/.koolie/core/framework/runtime/client-settings.json +3 -0
- package/.koolie/core/framework/runtime/hooks.json +20 -0
- package/.koolie/core/framework/runtime/mcp-config.example.json +4 -0
- package/.koolie/core/framework/runtime/permissions.json +106 -0
- package/.koolie/core/framework/runtime/root-instruction-local.example.md +19 -0
- package/.koolie/core/framework/runtime/root-instruction.md +116 -0
- package/.koolie/core/framework/runtime/rules/00-framework-core.md +49 -0
- package/.koolie/core/framework/runtime/rules/10-privacy-security.md +49 -0
- package/.koolie/core/framework/runtime/rules/15-development-rules.md +41 -0
- package/.koolie/core/framework/runtime/rules/16-plan-spezifikation.md +32 -0
- package/.koolie/core/framework/runtime/rules/20-project-overlay.md +60 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/CHANGELOG.md +14 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/EXAMPLES.md +57 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/SKILL.md +177 -0
- package/.koolie/core/framework/skills/fw-bugfix-prepare/TESTS.md +15 -0
- package/.koolie/core/framework/skills/fw-change-analyze/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-change-analyze/EXAMPLES.md +66 -0
- package/.koolie/core/framework/skills/fw-change-analyze/SKILL.md +167 -0
- package/.koolie/core/framework/skills/fw-change-analyze/TESTS.md +16 -0
- package/.koolie/core/framework/skills/fw-change-small/CHANGELOG.md +13 -0
- package/.koolie/core/framework/skills/fw-change-small/EXAMPLES.md +68 -0
- package/.koolie/core/framework/skills/fw-change-small/SKILL.md +175 -0
- package/.koolie/core/framework/skills/fw-change-small/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-code-explain/CHANGELOG.md +11 -0
- package/.koolie/core/framework/skills/fw-code-explain/EXAMPLES.md +61 -0
- package/.koolie/core/framework/skills/fw-code-explain/SKILL.md +163 -0
- package/.koolie/core/framework/skills/fw-code-explain/TESTS.md +11 -0
- package/.koolie/core/framework/skills/fw-docs-update/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-docs-update/EXAMPLES.md +59 -0
- package/.koolie/core/framework/skills/fw-docs-update/SKILL.md +160 -0
- package/.koolie/core/framework/skills/fw-docs-update/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-error-analyze/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-error-analyze/EXAMPLES.md +67 -0
- package/.koolie/core/framework/skills/fw-error-analyze/SKILL.md +160 -0
- package/.koolie/core/framework/skills/fw-error-analyze/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-mr-description/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-mr-description/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-mr-description/SKILL.md +170 -0
- package/.koolie/core/framework/skills/fw-mr-description/TESTS.md +12 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/CHANGELOG.md +7 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/EXAMPLES.md +48 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/SKILL.md +147 -0
- package/.koolie/core/framework/skills/fw-overlay-pflege/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-plan/CHANGELOG.md +14 -0
- package/.koolie/core/framework/skills/fw-plan/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-plan/SKILL.md +168 -0
- package/.koolie/core/framework/skills/fw-plan/TESTS.md +14 -0
- package/.koolie/core/framework/skills/fw-refactor/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-refactor/EXAMPLES.md +70 -0
- package/.koolie/core/framework/skills/fw-refactor/SKILL.md +173 -0
- package/.koolie/core/framework/skills/fw-refactor/TESTS.md +14 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/CHANGELOG.md +10 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/EXAMPLES.md +52 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/SKILL.md +149 -0
- package/.koolie/core/framework/skills/fw-repo-analyze/TESTS.md +11 -0
- package/.koolie/core/framework/skills/fw-review-support/CHANGELOG.md +12 -0
- package/.koolie/core/framework/skills/fw-review-support/EXAMPLES.md +69 -0
- package/.koolie/core/framework/skills/fw-review-support/SKILL.md +179 -0
- package/.koolie/core/framework/skills/fw-review-support/TESTS.md +13 -0
- package/.koolie/core/framework/skills/fw-tests/CHANGELOG.md +9 -0
- package/.koolie/core/framework/skills/fw-tests/EXAMPLES.md +65 -0
- package/.koolie/core/framework/skills/fw-tests/SKILL.md +169 -0
- package/.koolie/core/framework/skills/fw-tests/TESTS.md +12 -0
- package/.koolie/core/framework/tech-packs/README.md +15 -0
- package/.koolie/core/framework/tech-packs/_template/TECH_PACK.md +61 -0
- package/.koolie/core/governance/ADOPTION_REGISTRY.md +89 -0
- package/.koolie/core/governance/CHANGE_REQUEST_TEMPLATE.md +60 -0
- package/.koolie/core/governance/DECISION_LOG.md +779 -0
- package/.koolie/core/governance/EXCEPTION_PROCESS.md +31 -0
- package/.koolie/core/governance/FEEDBACK_PROCESS.md +34 -0
- package/.koolie/core/governance/FRAMEWORK_DEV_PROFILE.md +135 -0
- package/.koolie/core/governance/INCIDENT_HANDLING.md +47 -0
- package/.koolie/core/governance/PRIORITY_HIERARCHY.md +61 -0
- package/.koolie/core/governance/RACI.md +37 -0
- package/.koolie/core/governance/RELEASE_PROCESS.md +183 -0
- package/.koolie/core/governance/change-requests/CR-2026-001-definition-release-1-0-0.md +67 -0
- package/.koolie/core/governance/change-requests/CR-2026-002-client-packs.md +63 -0
- package/.koolie/core/governance/change-requests/CR-2026-003-install-client-schalter.md +70 -0
- package/.koolie/core/governance/change-requests/CR-2026-004-client-pack-claude-code.md +82 -0
- package/.koolie/core/governance/change-requests/CR-2026-005-kern-neutralisierung.md +75 -0
- package/.koolie/core/governance/change-requests/CR-2026-006-gemeinsame-skill-quelle.md +77 -0
- package/.koolie/core/governance/change-requests/CR-2026-007-geteilte-kernbestandteile.md +80 -0
- package/.koolie/core/governance/change-requests/CR-2026-008-berechtigungen-und-hooks.md +85 -0
- package/.koolie/core/governance/change-requests/CR-2026-009-umbenennung-leitwerk.md +77 -0
- package/.koolie/core/governance/change-requests/CR-2026-010-restduplikation.md +73 -0
- package/.koolie/core/governance/change-requests/CR-2026-011-hauptdokument.md +72 -0
- package/.koolie/core/governance/change-requests/CR-2026-012-schreibschutz-kernverzeichnis.md +106 -0
- package/.koolie/core/governance/change-requests/CR-2026-013-validator-blindstellen.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-014-kurzform-langform.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-015-versionskette.md +150 -0
- package/.koolie/core/governance/change-requests/CR-2026-016-ap2-claude-code.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-017-ladebedingungen-claude-code.md +173 -0
- package/.koolie/core/governance/change-requests/CR-2026-018-quellenliste-claude-code.md +121 -0
- package/.koolie/core/governance/change-requests/CR-2026-019-strukturentscheidungen-fortschreiben.md +143 -0
- package/.koolie/core/governance/change-requests/CR-2026-020-akteursbezeichnung.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-021-hook-interpreter.md +113 -0
- package/.koolie/core/governance/change-requests/CR-2026-022-artefaktversionen.md +73 -0
- package/.koolie/core/governance/change-requests/CR-2026-023-shell-lesesperre.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-024-clientbindungen.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-025-betriebsmodi.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-026-fail-closed.md +134 -0
- package/.koolie/core/governance/change-requests/CR-2026-027-zeichenlimit-einstufung.md +105 -0
- package/.koolie/core/governance/change-requests/CR-2026-028-berechtigungsmodi.md +130 -0
- package/.koolie/core/governance/change-requests/CR-2026-029-hook-ablageort.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-030-lesende-werkzeuge.md +143 -0
- package/.koolie/core/governance/change-requests/CR-2026-031-regelquellen-ausserhalb.md +182 -0
- package/.koolie/core/governance/change-requests/CR-2026-032-fremde-skill-ablage.md +151 -0
- package/.koolie/core/governance/change-requests/CR-2026-033-modusabhaengige-durchsetzung.md +131 -0
- package/.koolie/core/governance/change-requests/CR-2026-034-nachweisbedingungen.md +116 -0
- package/.koolie/core/governance/change-requests/CR-2026-035-readme-in-der-regelablage.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-036-ortsangaben-hook-konfiguration.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-037-meldender-hook-clientgebunden.md +133 -0
- package/.koolie/core/governance/change-requests/CR-2026-038-importsteuerung.md +159 -0
- package/.koolie/core/governance/change-requests/CR-2026-039-normative-saetze-in-kommentaren.md +124 -0
- package/.koolie/core/governance/change-requests/CR-2026-040-erh01-ist-clientgebunden.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-041-s5-nicht-abbildbar.md +128 -0
- package/.koolie/core/governance/change-requests/CR-2026-042-abwesenheitsnachweis-suchwerkzeug.md +102 -0
- package/.koolie/core/governance/change-requests/CR-2026-043-validator-gibt-trefferwerte-aus.md +135 -0
- package/.koolie/core/governance/change-requests/CR-2026-044-aktivierungspruefung-clientgebunden.md +112 -0
- package/.koolie/core/governance/change-requests/CR-2026-045-update-verliert-die-clientwahl.md +116 -0
- package/.koolie/core/governance/change-requests/CR-2026-046-erstinstallation-ueberschreibt-projektdatei.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-047-zusagen-je-zugriffskanal.md +133 -0
- package/.koolie/core/governance/change-requests/CR-2026-048-modusgrenze-ohne-durchsetzung.md +137 -0
- package/.koolie/core/governance/change-requests/CR-2026-049-sondenlauf-kodierungsabhaengig.md +126 -0
- package/.koolie/core/governance/change-requests/CR-2026-050-allowed-tools-und-verworfene-permissions.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-051-quellenkarte-und-ueberholter-stand.md +110 -0
- package/.koolie/core/governance/change-requests/CR-2026-052-drei-regelkonflikte.md +166 -0
- package/.koolie/core/governance/change-requests/CR-2026-053-lesesperre-und-entwicklungsprofil.md +144 -0
- package/.koolie/core/governance/change-requests/CR-2026-054-aktivierung-verlangt-aktivitaet.md +124 -0
- package/.koolie/core/governance/change-requests/CR-2026-055-domain-ausnahme-ohne-mechanismus.md +173 -0
- package/.koolie/core/governance/change-requests/CR-2026-056-eingabeschema-und-pfadidentitaet.md +245 -0
- package/.koolie/core/governance/change-requests/CR-2026-057-disallowed-tools-und-s3.md +148 -0
- package/.koolie/core/governance/change-requests/CR-2026-058-unteragent-reichweite.md +203 -0
- package/.koolie/core/governance/change-requests/CR-2026-059-unteragent-tiefe-und-widerspruch.md +125 -0
- package/.koolie/core/governance/change-requests/CR-2026-060-stumme-brueche.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-061-berechtigungsdatei-ohne-pruefung.md +169 -0
- package/.koolie/core/governance/change-requests/CR-2026-062-werkzeugabbildung-des-frontmatters.md +178 -0
- package/.koolie/core/governance/change-requests/CR-2026-063-skillaufruf-ohne-freigabe.md +207 -0
- package/.koolie/core/governance/change-requests/CR-2026-064-pruefregister-nicht-nachgezaehlt.md +141 -0
- package/.koolie/core/governance/change-requests/CR-2026-065-devin-suchwerkzeuge-erhoben.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-066-schlitzdeckung-ohne-abgleich.md +153 -0
- package/.koolie/core/governance/change-requests/CR-2026-067-hookblock-und-praeparationsregister.md +140 -0
- package/.koolie/core/governance/change-requests/CR-2026-068-sondenlauf-nebenlaeufig.md +106 -0
- package/.koolie/core/governance/change-requests/CR-2026-069-bytecode-des-kerns.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-070-d11-zaehler.md +114 -0
- package/.koolie/core/governance/change-requests/CR-2026-071-strukturentscheidungen-bestaetigen.md +322 -0
- package/.koolie/core/governance/change-requests/CR-2026-072-modulstatus-heben.md +315 -0
- package/.koolie/core/governance/change-requests/CR-2026-073-nicht-skill-traeger-heben.md +246 -0
- package/.koolie/core/governance/change-requests/CR-2026-074-restliche-nicht-skill-traeger-heben.md +271 -0
- package/.koolie/core/governance/change-requests/CR-2026-075-ap2-zielversion-devin-desktop.md +335 -0
- package/.koolie/core/governance/change-requests/CR-2026-076-erster-sitzungstest.md +455 -0
- package/.koolie/core/governance/change-requests/CR-2026-077-sitzungstest-schranken.md +425 -0
- package/.koolie/core/governance/change-requests/CR-2026-078-planung-nach-1-0-0.md +294 -0
- package/.koolie/core/governance/change-requests/CR-2026-079-umbenennung-vorziehen.md +233 -0
- package/.koolie/core/governance/change-requests/CR-2026-080-clientbindung-des-kerns.md +321 -0
- package/.koolie/core/governance/change-requests/CR-2026-081-produktnamen-im-kern.md +297 -0
- package/.koolie/core/governance/change-requests/CR-2026-082-sitzungstest-pi-ds-2.md +145 -0
- package/.koolie/core/governance/change-requests/CR-2026-083-sitzungstest-ne-sc.md +300 -0
- package/.koolie/core/governance/change-requests/CR-2026-084-trockenlauf-gegen-den-committeten-stand.md +117 -0
- package/.koolie/core/governance/change-requests/CR-2026-085-vorbedingungen-sitzungstest-5.md +182 -0
- package/.koolie/core/governance/change-requests/CR-2026-086-grenzfaelle-gegen-die-fassungen.md +164 -0
- package/.koolie/core/governance/change-requests/CR-2026-087-produktbeobachtung-quellenliste.md +206 -0
- package/.koolie/core/governance/change-requests/CR-2026-088-vorbedingungen-testblaetter.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-089-herrichtung-uebungsrepositorium.md +226 -0
- package/.koolie/core/governance/change-requests/CR-2026-090-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +255 -0
- package/.koolie/core/governance/change-requests/CR-2026-091-sitzungstest-5.md +163 -0
- package/.koolie/core/governance/change-requests/CR-2026-092-pruefmittelwort-und-buendelschnitt.md +226 -0
- package/.koolie/core/governance/change-requests/CR-2026-093-sechzehnte-praeparation.md +151 -0
- package/.koolie/core/governance/change-requests/CR-2026-094-testblaetter-buendel-1.md +113 -0
- package/.koolie/core/governance/change-requests/CR-2026-095-pruefapparat-filter.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-096-vorbedingungen-buendel-2.md +225 -0
- package/.koolie/core/governance/change-requests/CR-2026-097-testblaetter-buendel-2.md +162 -0
- package/.koolie/core/governance/change-requests/CR-2026-098-anforderungen-auslieferung.md +93 -0
- package/.koolie/core/governance/change-requests/CR-2026-099-k74-und-vorbedingungen-buendel-3.md +119 -0
- package/.koolie/core/governance/change-requests/CR-2026-100-testblaetter-buendel-3.md +120 -0
- package/.koolie/core/governance/change-requests/CR-2026-101-k77-eigener-posten.md +165 -0
- package/.koolie/core/governance/change-requests/CR-2026-102-k77-entschieden.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-103-vorbedingungen-buendel-4.md +76 -0
- package/.koolie/core/governance/change-requests/CR-2026-104-herrichtung-buendel-4.md +82 -0
- package/.koolie/core/governance/change-requests/CR-2026-105-messapparat-buendel-4.md +227 -0
- package/.koolie/core/governance/change-requests/CR-2026-106-uebergabe-einchecken.md +91 -0
- package/.koolie/core/governance/change-requests/CR-2026-107-uebergabe-im-release-commit.md +111 -0
- package/.koolie/core/governance/change-requests/CR-2026-108-testblaetter-buendel-4.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-109-berichtsweg-des-aufraeumers.md +108 -0
- package/.koolie/core/governance/change-requests/CR-2026-110-vorbedingungen-des-nachlaufs.md +184 -0
- package/.koolie/core/governance/change-requests/CR-2026-111-der-apparat-auf-dem-weg-der-wiederaufnahme.md +127 -0
- package/.koolie/core/governance/change-requests/CR-2026-112-der-arbeitsplatz-im-kern.md +103 -0
- package/.koolie/core/governance/change-requests/CR-2026-113-nachlauf-buendel-4.md +103 -0
- package/.koolie/core/governance/change-requests/CR-2026-114-vorbedingungen-buendel-5.md +317 -0
- package/.koolie/core/governance/change-requests/CR-2026-115-herrichtung-buendel-5.md +244 -0
- package/.koolie/core/governance/change-requests/CR-2026-116-messtag-buendel-5.md +178 -0
- package/.koolie/core/governance/change-requests/CR-2026-117-sammelzellen-zentraler-katalog.md +251 -0
- package/.koolie/core/governance/change-requests/CR-2026-118-quellenzuordnung-matrixzeilen.md +115 -0
- package/.koolie/core/governance/change-requests/CR-2026-119-umbenennung-koolie.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-120-ap2-rest-devin-desktop.md +96 -0
- package/.koolie/core/governance/change-requests/CR-2026-121-verify-marker-abschaffen.md +185 -0
- package/.koolie/core/governance/change-requests/CR-2026-122-umbenennung-koolie-lauf.md +131 -0
- package/.koolie/core/governance/change-requests/CR-2026-123-vortrag-und-namensabsatz.md +170 -0
- package/.koolie/core/governance/change-requests/CR-2026-124-hauptdokument-ap11.md +237 -0
- package/.koolie/core/governance/change-requests/CR-2026-125-word-fassung-und-blinder-fleck.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-126-lizenz-gpl3.md +112 -0
- package/.koolie/core/governance/change-requests/CR-2026-127-gegenzeichnung-rollenfrage.md +96 -0
- package/.koolie/core/governance/change-requests/CR-2026-128-freigabelauf-1.0.0.md +278 -0
- package/.koolie/core/governance/change-requests/CR-2026-129-archiv-zeilenenden.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-130-reihenfolge-des-hebens.md +204 -0
- package/.koolie/core/governance/change-requests/CR-2026-131-chronik-und-vorlage.md +194 -0
- package/.koolie/core/governance/change-requests/CR-2026-132-erhebung-openai-codex.md +185 -0
- package/.koolie/core/governance/change-requests/CR-2026-133-bau-openai-codex.md +97 -0
- package/.koolie/core/governance/change-requests/CR-2026-134-uebergabe-lokal.md +117 -0
- package/.koolie/core/governance/change-requests/CR-2026-135-pfadlisten-nul-getrennt.md +139 -0
- package/.koolie/core/governance/change-requests/CR-2026-136-overlay-werte-einordnung.md +156 -0
- package/.koolie/core/governance/change-requests/CR-2026-137-kopierweg-kern.md +144 -0
- package/.koolie/core/governance/change-requests/CR-2026-138-overlay-muster-general.md +118 -0
- package/.koolie/core/governance/change-requests/CR-2026-139-overlay-muster-dokumente.md +105 -0
- package/.koolie/core/governance/change-requests/CR-2026-140-installer-je-zielsystem.md +120 -0
- package/.koolie/core/governance/change-requests/CR-2026-141-lieferumfang.md +123 -0
- package/.koolie/core/governance/change-requests/CR-2026-142-dokumentationsstandard.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-143-klasse-b-core-laufzeit.md +89 -0
- package/.koolie/core/governance/change-requests/CR-2026-144-klasse-b-governance.md +90 -0
- package/.koolie/core/governance/change-requests/CR-2026-145-klasse-b-skills.md +81 -0
- package/.koolie/core/governance/change-requests/CR-2026-146-code-pack-posten.md +84 -0
- package/.koolie/core/governance/change-requests/CR-2026-147-regel-register-posten.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-148-mehrprojekt-tokenlast.md +70 -0
- package/.koolie/core/governance/change-requests/CR-2026-149-regelablage-pfadtoken.md +71 -0
- package/.koolie/core/governance/change-requests/CR-2026-150-client-pack-kiro.md +76 -0
- package/.koolie/core/governance/change-requests/CR-2026-151-skill-anweisungen.md +71 -0
- package/.koolie/core/governance/change-requests/CR-2026-152-testblaetter-modellwechsel.md +78 -0
- package/.koolie/core/governance/change-requests/CR-2026-153-attributionszeile.md +88 -0
- package/.koolie/core/governance/change-requests/CR-2026-154-auffindbarkeit.md +102 -0
- package/.koolie/core/governance/change-requests/CR-2026-155-client-pack-cursor.md +80 -0
- package/.koolie/core/governance/change-requests/CR-2026-156-mandat-und-reibung.md +100 -0
- package/.koolie/core/governance/change-requests/CR-2026-157-mcp-anbindung.md +93 -0
- package/.koolie/core/governance/change-requests/CR-2026-158-registerpflege.md +69 -0
- package/.koolie/core/governance/change-requests/CR-2026-159-powershell.md +49 -0
- package/.koolie/core/governance/change-requests/CR-2026-160-messapparat.md +59 -0
- package/.koolie/core/governance/change-requests/CR-2026-161-pruefwerkzeuge.md +52 -0
- package/.koolie/core/governance/change-requests/CR-2026-162-schutzschicht.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-163-pfadsemantik.md +61 -0
- package/.koolie/core/governance/change-requests/CR-2026-164-modi-ausnahmen.md +65 -0
- package/.koolie/core/governance/change-requests/CR-2026-165-installer-banner.md +406 -0
- package/.koolie/core/governance/change-requests/CR-2026-166-nachlauf-aufzeichnungen.md +59 -0
- package/.koolie/core/governance/change-requests/CR-2026-167-einsatzarchitektur.md +60 -0
- package/.koolie/core/governance/change-requests/CR-2026-168-paketquellen.md +64 -0
- package/.koolie/core/governance/change-requests/CR-2026-169-modusbindung-messfragen.md +58 -0
- package/.koolie/core/governance/change-requests/CR-2026-170-erste-veroeffentlichung.md +62 -0
- package/.koolie/core/governance/change-requests/CR-2026-171-befehl-im-projektverzeichnis.md +57 -0
- package/.koolie/core/governance/change-requests/CR-2026-172-auftritt-npm-suche.md +58 -0
- package/.koolie/core/install.py +2402 -0
- package/.koolie/core/install_dialog.py +227 -0
- package/.koolie/core/koexistenz.py +112 -0
- package/.koolie/core/mandat.py +605 -0
- package/.koolie/core/onboarding/COMPLETION_CRITERIA.md +37 -0
- package/.koolie/core/onboarding/GUIDE.md +103 -0
- package/.koolie/core/onboarding/KNOWLEDGE_CHECK.md +48 -0
- package/.koolie/core/onboarding/MENTOR_CHECKLIST.md +40 -0
- package/.koolie/core/onboarding/QUICKSTART.md +50 -0
- package/.koolie/core/onboarding/REFERENCE.md +69 -0
- package/.koolie/core/onboarding/exercises/EXERCISES.md +78 -0
- package/.koolie/core/onboarding/exercises/README.md +120 -0
- package/.koolie/core/pilot/METRICS.md +59 -0
- package/.koolie/core/pilot/PILOT_CONCEPT.md +42 -0
- package/.koolie/core/prompts/01-understand-codebase.md +99 -0
- package/.koolie/core/prompts/02-impact-analysis.md +104 -0
- package/.koolie/core/prompts/03-implementation-planning.md +102 -0
- package/.koolie/core/prompts/04-code-generation.md +100 -0
- package/.koolie/core/prompts/05-test-generation.md +103 -0
- package/.koolie/core/prompts/06-refactoring.md +102 -0
- package/.koolie/core/prompts/07-debugging.md +97 -0
- package/.koolie/core/prompts/08-security-review.md +92 -0
- package/.koolie/core/prompts/09-performance-analysis.md +89 -0
- package/.koolie/core/prompts/10-documentation.md +91 -0
- package/.koolie/core/prompts/11-merge-request-review.md +94 -0
- package/.koolie/core/prompts/12-developer-training.md +90 -0
- package/.koolie/core/prompts/README.md +88 -0
- package/.koolie/core/templates/MR_AI_DISCLOSURE.md +37 -0
- package/.koolie/core/templates/PLAN_TEMPLATE.md +57 -0
- package/.koolie/core/templates/SKILL_TEMPLATE.md +159 -0
- package/.koolie/core/templates/project-overlay/OVERLAY.md +315 -0
- package/.koolie/core/templates/project-overlay/documents/README.md +43 -0
- package/.koolie/core/templates/project-overlay/documents/ai-governance/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/ai-process-model/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/architecture/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/architecture/decisions/README.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/branching-strategy/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/coding-guidelines/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/definition-of-done/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/definition-of-ready/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/deployment/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/glossary/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/quality/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/roadmap/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/roles/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/documents/security/.gitkeep.md +3 -0
- package/.koolie/core/templates/project-overlay/exceptions/EXCEPTIONS.md +9 -0
- package/.koolie/core/templates/project-overlay/forbidden-terms.txt +8 -0
- package/.koolie/core/templates/project-overlay/overlay-manifest.yaml +73 -0
- package/.koolie/core/templates/rules/21-overlay-TEMPLATE.md.template +28 -0
- package/.koolie/core/templates/rules/40-tech-TEMPLATE.md.template +33 -0
- package/.koolie/core/tests/EDGE_CASES.md +67 -0
- package/.koolie/core/tests/TEST_CATALOG.md +170 -0
- package/.koolie/core/tests/erhebungen/README.md +326 -0
- package/.koolie/core/tests/erhebungen/ablage.py +357 -0
- package/.koolie/core/tests/erhebungen/apparat/__init__.py +22 -0
- package/.koolie/core/tests/erhebungen/apparat/baum.py +214 -0
- package/.koolie/core/tests/erhebungen/apparat/belege.py +91 -0
- package/.koolie/core/tests/erhebungen/apparat/clients.py +321 -0
- package/.koolie/core/tests/erhebungen/apparat/freigabe.py +74 -0
- package/.koolie/core/tests/erhebungen/apparat/kontingent.py +64 -0
- package/.koolie/core/tests/erhebungen/apparat/laeufer.py +155 -0
- package/.koolie/core/tests/erhebungen/apparat/reihe.py +202 -0
- package/.koolie/core/tests/erhebungen/apparat/selbsttest.py +280 -0
- package/.koolie/core/tests/erhebungen/apparat/stand.py +30 -0
- package/.koolie/core/tests/erhebungen/apparat/vorpruefung.py +70 -0
- package/.koolie/core/tests/erhebungen/auswerten-b4.py +468 -0
- package/.koolie/core/tests/erhebungen/auswerten-b5.py +517 -0
- package/.koolie/core/tests/erhebungen/auswerten-dd.py +172 -0
- package/.koolie/core/tests/erhebungen/baeume-b4.py +334 -0
- package/.koolie/core/tests/erhebungen/baeume-b5.py +339 -0
- package/.koolie/core/tests/erhebungen/baeume_loeschen.py +138 -0
- package/.koolie/core/tests/erhebungen/cc-overlay-fuellen.py +277 -0
- package/.koolie/core/tests/erhebungen/dossier-b4.py +178 -0
- package/.koolie/core/tests/erhebungen/dossier-b5.py +202 -0
- package/.koolie/core/tests/erhebungen/historie-bauen-b4.py +642 -0
- package/.koolie/core/tests/erhebungen/k-bauen-b3.py +841 -0
- package/.koolie/core/tests/erhebungen/lauf-dd.py +146 -0
- package/.koolie/core/tests/erhebungen/lauf.py +114 -0
- package/.koolie/core/tests/erhebungen/mcp-waechter.py +278 -0
- package/.koolie/core/tests/erhebungen/messbaum-schnitt.py +256 -0
- package/.koolie/core/tests/erhebungen/messen.py +72 -0
- package/.koolie/core/tests/erhebungen/node-waechter.py +74 -0
- package/.koolie/core/tests/erhebungen/packaktivierung.py +403 -0
- package/.koolie/core/tests/erhebungen/prompts-schreiben-b4.py +210 -0
- package/.koolie/core/tests/erhebungen/prompts-schreiben-b5.py +251 -0
- package/.koolie/core/tests/erhebungen/reihe-b4.py +171 -0
- package/.koolie/core/tests/erhebungen/reihe-b5.py +172 -0
- package/.koolie/core/tests/erhebungen/stand-b4.py +135 -0
- package/.koolie/core/tests/erhebungen/stand-b5.py +137 -0
- package/.koolie/core/tests/erhebungen/trust-b4.py +56 -0
- package/.koolie/core/tests/erhebungen/trust-b5.py +56 -0
- package/.koolie/core/tests/erhebungen/turn2-schreiben-b4.py +105 -0
- package/.koolie/core/tests/erhebungen/umgebungen-bauen-b4.py +377 -0
- package/.koolie/core/tests/erhebungen/umgebungen-bauen-b5.py +363 -0
- package/.koolie/core/tests/erhebungen/zaehlen46.py +74 -0
- package/.koolie/core/tests/erhebungen/zustand-b4.py +82 -0
- package/.koolie/core/tests/erhebungen/zustand-b5.py +82 -0
- package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code-wirkungsnachweise.md +194 -0
- package/.koolie/core/tests/protocols/2026-09-10-AP2-claude-code.md +468 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-020-akteursbezeichnung.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-021-hook-interpreter.md +138 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-022-artefaktversionen.md +87 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-023-shell-lesesperre.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-10-CR-2026-024-clientbindungen.md +98 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-DS-03.md +90 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-01.md +105 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-02.md +123 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-KO-04.md +73 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-RE-02.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01-wiederholung.md +108 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-VN-01.md +249 -0
- package/.koolie/core/tests/protocols/2026-09-10-FW-ZA-05.md +99 -0
- package/.koolie/core/tests/protocols/2026-09-11-AP2-devin-desktop.md +257 -0
- package/.koolie/core/tests/protocols/2026-09-11-CR-2026-026-fail-closed.md +113 -0
- package/.koolie/core/tests/protocols/2026-09-11-erhebungen-K21-K26.md +243 -0
- package/.koolie/core/tests/protocols/2026-09-11-wirkungsnachweise-0.26.0.md +101 -0
- package/.koolie/core/tests/protocols/2026-09-12-B01-allowed-tools.md +152 -0
- package/.koolie/core/tests/protocols/2026-09-12-B04-B05-gegenpruefung.md +204 -0
- package/.koolie/core/tests/protocols/2026-09-12-erhebungen-K28-S5-B9-bypass.md +268 -0
- package/.koolie/core/tests/protocols/2026-09-12-mehrprojekt-arbeitsbereich.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.26.1.md +126 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.27.0.md +114 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.28.0.md +129 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.29.0.md +121 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.30.0.md +112 -0
- package/.koolie/core/tests/protocols/2026-09-12-wirkungsnachweise-0.31.0.md +107 -0
- package/.koolie/core/tests/protocols/2026-09-13-B06-gegenpruefung.md +370 -0
- package/.koolie/core/tests/protocols/2026-09-13-B07-B09-gegenpruefung.md +211 -0
- package/.koolie/core/tests/protocols/2026-09-13-B08-B11-gegenpruefung.md +179 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-disallowed-tools.md +147 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent-tiefe.md +139 -0
- package/.koolie/core/tests/protocols/2026-09-13-erhebung-unteragent.md +214 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-berechtigungsdatei.md +253 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-stumme-brueche.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-13-gegenpruefung-werkzeugabbildung.md +219 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.32.0.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.33.0.md +169 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.34.0.md +187 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.35.0.md +187 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.36.0.md +137 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.37.0.md +112 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.38.0.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.39.0.md +188 -0
- package/.koolie/core/tests/protocols/2026-09-13-wirkungsnachweise-0.40.0.md +214 -0
- package/.koolie/core/tests/protocols/2026-09-14-erhebung-devin-werkzeuge.md +267 -0
- package/.koolie/core/tests/protocols/2026-09-14-erhebung-skillaufruf.md +238 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-pruefregister.md +156 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-schlitzdeckung.md +206 -0
- package/.koolie/core/tests/protocols/2026-09-14-gegenpruefung-skillwahl.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-14-migrationslauf-pilot.md +134 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.41.0.md +175 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.42.0.md +180 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.43.0.md +165 -0
- package/.koolie/core/tests/protocols/2026-09-14-wirkungsnachweise-0.44.0.md +130 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-d11-zaehlregeln.md +311 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-modulstatus.md +524 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-nicht-skill-traeger.md +225 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-restliche-nicht-skill-traeger.md +345 -0
- package/.koolie/core/tests/protocols/2026-09-15-gegenpruefung-strukturentscheidungen.md +392 -0
- package/.koolie/core/tests/protocols/2026-09-15-herrichtung-uebungsrepositorium.md +213 -0
- package/.koolie/core/tests/protocols/2026-09-15-migrationslauf-pilot-0.46.0.md +143 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.45.0.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.46.0.md +193 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.47.0.md +149 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.49.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.50.0.md +183 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.51.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-15-wirkungsnachweise-0.52.0.md +168 -0
- package/.koolie/core/tests/protocols/2026-09-16-AP2-zielversion-devin-desktop.md +231 -0
- package/.koolie/core/tests/protocols/2026-09-16-wirkungsnachweise-0.53.0.md +350 -0
- package/.koolie/core/tests/protocols/2026-09-17-nachtrag-migrationshinweis-0.54.1.md +121 -0
- package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-pi-ds.md +523 -0
- package/.koolie/core/tests/protocols/2026-09-17-sitzungstest-schranken.md +433 -0
- package/.koolie/core/tests/protocols/2026-09-17-wirkungsnachweise-0.54.0.md +159 -0
- package/.koolie/core/tests/protocols/2026-09-18-FW-AK-01.md +442 -0
- package/.koolie/core/tests/protocols/2026-09-18-FW-KO-05.md +231 -0
- package/.koolie/core/tests/protocols/2026-09-18-herrichtung-uebungsrepositorium.md +273 -0
- package/.koolie/core/tests/protocols/2026-09-18-nachtrag-preis-umbenennung-0.56.1.md +102 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-5.md +349 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-ne-sc.md +430 -0
- package/.koolie/core/tests/protocols/2026-09-18-sitzungstest-pi-ds-2.md +499 -0
- package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-sitzungstest-5-zweiter-durchgang.md +170 -0
- package/.koolie/core/tests/protocols/2026-09-18-vorbedingungen-testblaetter.md +184 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.55.0.md +202 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.0.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.56.2.md +154 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.0.md +228 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.57.1.md +262 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.58.0.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.59.0.md +150 -0
- package/.koolie/core/tests/protocols/2026-09-18-wirkungsnachweise-0.60.0.md +340 -0
- package/.koolie/core/tests/protocols/2026-09-19-herrichtung-buendel-4.md +235 -0
- package/.koolie/core/tests/protocols/2026-09-19-k77-zurechenbarkeit.md +236 -0
- package/.koolie/core/tests/protocols/2026-09-19-pruefapparat-filter.md +50 -0
- package/.koolie/core/tests/protocols/2026-09-19-pruefmittelwort-und-buendelschnitt.md +239 -0
- package/.koolie/core/tests/protocols/2026-09-19-sechzehnte-praeparation.md +135 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-1.md +250 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-2.md +229 -0
- package/.koolie/core/tests/protocols/2026-09-19-testblaetter-buendel-3.md +293 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-2.md +236 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-3.md +253 -0
- package/.koolie/core/tests/protocols/2026-09-19-vorbedingungen-buendel-4.md +138 -0
- package/.koolie/core/tests/protocols/2026-09-20-messapparat-buendel-4.md +433 -0
- package/.koolie/core/tests/protocols/2026-09-20-testblaetter-buendel-4.md +321 -0
- package/.koolie/core/tests/protocols/2026-09-20-uebergabe-im-release-commit.md +146 -0
- package/.koolie/core/tests/protocols/2026-09-20-vorbedingungen-nachlauf-b4.md +259 -0
- package/.koolie/core/tests/protocols/2026-09-21-arbeitsplatz-im-kern.md +127 -0
- package/.koolie/core/tests/protocols/2026-09-21-nachlauf-buendel-4.md +157 -0
- package/.koolie/core/tests/protocols/2026-09-21-vorbedingungen-buendel-5.md +247 -0
- package/.koolie/core/tests/protocols/2026-09-21-wiederaufnahme-nachlauf-b4.md +190 -0
- package/.koolie/core/tests/protocols/2026-09-22-ap2-rest-devin-desktop.md +614 -0
- package/.koolie/core/tests/protocols/2026-09-22-hauptdokument-ap11.md +443 -0
- package/.koolie/core/tests/protocols/2026-09-22-herrichtung-buendel-5.md +224 -0
- package/.koolie/core/tests/protocols/2026-09-22-messtag-buendel-5.md +327 -0
- package/.koolie/core/tests/protocols/2026-09-22-quellenzuordnung-matrixzeilen.md +230 -0
- package/.koolie/core/tests/protocols/2026-09-22-sammelzellen-zentraler-katalog.md +354 -0
- package/.koolie/core/tests/protocols/2026-09-22-umbenennung-koolie.md +296 -0
- package/.koolie/core/tests/protocols/2026-09-22-verify-marker-abschaffen.md +283 -0
- package/.koolie/core/tests/protocols/2026-09-22-vortrag-und-name.md +261 -0
- package/.koolie/core/tests/protocols/2026-09-22-wirkungsnachweise-0.86.0.md +158 -0
- package/.koolie/core/tests/protocols/2026-09-23-archiv-zeilenenden.md +113 -0
- package/.koolie/core/tests/protocols/2026-09-23-bau-openai-codex.md +168 -0
- package/.koolie/core/tests/protocols/2026-09-23-chronik-und-vorlage.md +224 -0
- package/.koolie/core/tests/protocols/2026-09-23-erhebung-openai-codex.md +309 -0
- package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0-vorbereitung.md +119 -0
- package/.koolie/core/tests/protocols/2026-09-23-freigabelauf-1.0.0.md +150 -0
- package/.koolie/core/tests/protocols/2026-09-23-gegenzeichnung-rollenfrage.md +198 -0
- package/.koolie/core/tests/protocols/2026-09-23-reihenfolge-des-hebens.md +220 -0
- package/.koolie/core/tests/protocols/2026-09-23-word-fassung-und-blinder-fleck.md +307 -0
- package/.koolie/core/tests/protocols/2026-09-24-kopierweg-kern.md +98 -0
- package/.koolie/core/tests/protocols/2026-09-24-overlay-werte-einordnung.md +111 -0
- package/.koolie/core/tests/protocols/2026-09-24-pfadlisten-nul-getrennt.md +128 -0
- package/.koolie/core/tests/protocols/2026-09-24-uebergabe-lokal.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-25-code-pack-posten.md +86 -0
- package/.koolie/core/tests/protocols/2026-09-25-dokumentationsstandard.md +101 -0
- package/.koolie/core/tests/protocols/2026-09-25-installer-je-zielsystem.md +134 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-core-laufzeit.md +126 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-governance.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-25-klasse-b-skills.md +91 -0
- package/.koolie/core/tests/protocols/2026-09-25-lieferumfang.md +76 -0
- package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-dokumente.md +107 -0
- package/.koolie/core/tests/protocols/2026-09-25-overlay-muster-general.md +100 -0
- package/.koolie/core/tests/protocols/2026-09-25-regel-register-posten.md +87 -0
- package/.koolie/core/tests/protocols/2026-09-26-attributionszeile.md +83 -0
- package/.koolie/core/tests/protocols/2026-09-26-auffindbarkeit.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-26-bau-cursor.md +68 -0
- package/.koolie/core/tests/protocols/2026-09-26-bau-kiro.md +75 -0
- package/.koolie/core/tests/protocols/2026-09-26-mehrprojekt-tokenlast.md +174 -0
- package/.koolie/core/tests/protocols/2026-09-26-regelablage-pfadtoken.md +133 -0
- package/.koolie/core/tests/protocols/2026-09-26-skill-anweisungen.md +111 -0
- package/.koolie/core/tests/protocols/2026-09-26-testblaetter-modellwechsel.md +106 -0
- package/.koolie/core/tests/protocols/2026-09-27-mandat-und-reibung.md +58 -0
- package/.koolie/core/tests/protocols/2026-09-28-mcp-anbindung.md +72 -0
- package/.koolie/core/tests/protocols/2026-09-29-messapparat.md +75 -0
- package/.koolie/core/tests/protocols/2026-09-29-powershell.md +58 -0
- package/.koolie/core/tests/protocols/2026-09-29-pruefwerkzeuge.md +64 -0
- package/.koolie/core/tests/protocols/2026-09-29-registerpflege.md +228 -0
- package/.koolie/core/tests/protocols/2026-09-29-schutzschicht.md +95 -0
- package/.koolie/core/tests/protocols/2026-09-30-einsatzarchitektur.md +104 -0
- package/.koolie/core/tests/protocols/2026-09-30-modi-ausnahmen.md +77 -0
- package/.koolie/core/tests/protocols/2026-09-30-nachlauf-banner.md +85 -0
- package/.koolie/core/tests/protocols/2026-09-30-paketquellen.md +65 -0
- package/.koolie/core/tests/protocols/2026-09-30-pfadsemantik.md +79 -0
- package/.koolie/core/tests/protocols/2026-10-01-auftritt-und-suche.md +58 -0
- package/.koolie/core/tests/protocols/2026-10-01-befehl-im-projektverzeichnis.md +47 -0
- package/.koolie/core/tests/protocols/2026-10-01-erste-veroeffentlichung.md +60 -0
- package/.koolie/core/tests/protocols/2026-10-01-modusbindung-messfragen.md +107 -0
- package/.koolie/core/tests/protocols/README.md +14 -0
- package/.koolie/core/tests/scripts/hook-check-secrets.py +1307 -0
- package/.koolie/core/tests/scripts/hook-overlay-status.py +120 -0
- package/.koolie/core/tests/scripts/mermaid_renderer.py +67 -0
- package/.koolie/core/tests/scripts/overlay_status.py +130 -0
- package/.koolie/core/tests/scripts/probe-pruefungen.py +110 -0
- package/.koolie/core/tests/scripts/pruefungen/__init__.py +4 -0
- package/.koolie/core/tests/scripts/pruefungen/berechtigungen.py +1559 -0
- package/.koolie/core/tests/scripts/pruefungen/bestand.py +1433 -0
- package/.koolie/core/tests/scripts/pruefungen/dokumente.py +1262 -0
- package/.koolie/core/tests/scripts/pruefungen/gemeinsam.py +784 -0
- package/.koolie/core/tests/scripts/pruefungen/hooks.py +1188 -0
- package/.koolie/core/tests/scripts/pruefungen/overlay.py +1251 -0
- package/.koolie/core/tests/scripts/pruefungen/packs.py +1314 -0
- package/.koolie/core/tests/scripts/pruefungen/register.py +950 -0
- package/.koolie/core/tests/scripts/pruefungen/testkatalog.py +1202 -0
- package/.koolie/core/tests/scripts/pruefungen/werkzeuge.py +957 -0
- package/.koolie/core/tests/scripts/sonden/__init__.py +4 -0
- package/.koolie/core/tests/scripts/sonden/apparat.py +653 -0
- package/.koolie/core/tests/scripts/sonden/teil01_grundbestand_und_installation.py +999 -0
- package/.koolie/core/tests/scripts/sonden/teil02_packs_mandat_mcp.py +942 -0
- package/.koolie/core/tests/scripts/sonden/teil03_pruefungen_26_bis_36.py +1184 -0
- package/.koolie/core/tests/scripts/sonden/teil04_pruefungen_37_bis_45.py +1491 -0
- package/.koolie/core/tests/scripts/sonden/teil05_pruefungen_46_bis_55.py +1447 -0
- package/.koolie/core/tests/scripts/sonden/teil06_pruefungen_57_bis_65.py +739 -0
- package/.koolie/core/tests/scripts/sonden/teil07_overlay_und_lieferung.py +1014 -0
- package/.koolie/core/tests/scripts/sonden/teil08_pruefungen_66_bis_80.py +1325 -0
- package/.koolie/core/tests/scripts/sonden/teil09_pruefmittel_81_und_82.py +505 -0
- package/.koolie/core/tests/scripts/sonden/teil10_pruefungen_83_bis_95.py +1218 -0
- package/.koolie/core/tests/scripts/sonden/teil11_pruefungen_104_und_105.py +149 -0
- package/.koolie/core/tests/scripts/sonden/teil12_pruefungen_106_und_107.py +136 -0
- package/.koolie/core/tests/scripts/sonden/teil13_pfad_und_mustersemantik.py +150 -0
- package/.koolie/core/tests/scripts/sonden/teil14_modi_ausnahmen_skills.py +204 -0
- package/.koolie/core/tests/scripts/sonden/teil15_banner_und_nachlauf.py +193 -0
- package/.koolie/core/tests/scripts/sonden/teil16_koexistenz.py +114 -0
- package/.koolie/core/tests/scripts/sonden/teil17_paketquellen.py +115 -0
- package/.koolie/core/tests/scripts/sonden/teil18_modusbindung_m3_m5.py +113 -0
- package/.koolie/core/tests/scripts/validate-framework.py +1104 -0
- package/.koolie/core/tests/scripts/validate-output.py +296 -0
- package/.koolie/core/wirksamkeit.py +430 -0
- package/CONTRIBUTING.md +119 -0
- package/LICENSE +674 -0
- package/QUICKSTART.en.md +135 -0
- package/QUICKSTART.md +129 -0
- package/README.en.md +108 -0
- package/README.md +107 -0
- package/install.cmd +44 -0
- package/install.command +46 -0
- package/package.json +21 -0
- package/paketquellen/README.md +41 -0
- package/paketquellen/bauen.py +411 -0
- package/paketquellen/koolie.cmd +23 -0
- package/paketquellen/koolie_befehl.py +82 -0
- package/paketquellen/npm/koolie.js +26 -0
|
@@ -0,0 +1,223 @@
|
|
|
1
|
+
# Client Pack `kiro`
|
|
2
|
+
|
|
3
|
+
| Attribut | Wert |
|
|
4
|
+
|---|---|
|
|
5
|
+
| Modul-ID | `CP-KI` |
|
|
6
|
+
| Ebene | keine – Abbildungsschicht |
|
|
7
|
+
| Version | 0.1.2 |
|
|
8
|
+
| Status | pilot |
|
|
9
|
+
| Owner (Rolle) | `<FRAMEWORK_OWNER>` |
|
|
10
|
+
| Client | Kiro – Kommandozeile (`kiro-cli`) und IDE; der autonome Agent in der Sandbox des Anbieters fällt unter D-10 und nicht unter dieses Pack |
|
|
11
|
+
| Verbindliche Zielversion | Kommandozeile `2.24.x` mit der Engine V3; IDE `1.1.x` (D-112). Die Engine V3 ist beim Hersteller eine Vorabversion; die Einstellungsdatei des Packs wählt sie (Abschnitt 1b) |
|
|
12
|
+
| Geprüfte Clientversion | Kommandozeile `2.24.1` (Agentenserver KAS `0.66.8`) – vor dem Messen festgeschrieben (D-117). IDE `1.1.70` (Agent-Erweiterung `1.1.158`) installiert, **an keiner Sitzung gemessen**. Konto: Free |
|
|
13
|
+
| Stand der Produktbeobachtung | Quellenliste in Anhang 31.4.4 (`QK-1` bis `QK-9`), abgerufen am 2026-09-26. `FW-AK-01` ist für dieses Pack nicht gefahren |
|
|
14
|
+
| Datum der Prüfung | **2026-09-26** – der Bau (`CR-2026-150`, `tests/protocols/2026-09-26-bau-kiro.md`): 23 Vorabmessungen und 16 Abnahmeläufe an realen Installationen, davon 9 interaktive Sitzungen über ein Pseudo-Terminal; rund 2,9 Credits |
|
|
15
|
+
|
|
16
|
+
> **Belegt, soweit gemessen (Stand 1.13.0).** Die Spalte „Einstufung" nennt die **vorgesehene** Durchsetzungstiefe, die Spalte „Beleg" ihren Nachweisstand: `gemessen` = an diesem Client beobachtet, `[DOK]` = aus der Herstellerdokumentation mit Quellenkennung, `[EMPF]` = Vorgabe des Frameworks, `BELEG OFFEN` = noch nicht belegt, mit Grund und Datum.
|
|
17
|
+
>
|
|
18
|
+
> **Alle sechs Kernzusagen sind `[TECHNISCH]`** – und alle sechs stehen unter derselben Bedingung: **Das Agentenprofil des Frameworks muss der aktive Agent sein** (Abschnitt 1b). 🔴 **Fehlt es oder ist es kaputt, fällt der Client still auf seinen eingebauten Agenten zurück**, und keine dieser Zeilen trägt mehr.
|
|
19
|
+
>
|
|
20
|
+
> 🔴 **Der schwerste Befund des Baus ist einer des Schutz-Hooks** (D-417): Mit der Standardsperrform endete der Hook mit Exit 2 – und der Köderinhalt kam heraus. Das Pack führt deshalb eine eigene Sperrform (H2).
|
|
21
|
+
>
|
|
22
|
+
> **Wer das Pack einsetzt,** liest zuerst Abschnitt 1b und Abschnitt 6.
|
|
23
|
+
|
|
24
|
+
## 1. Pfadabbildung
|
|
25
|
+
|
|
26
|
+
| Rolle des Artefakts | Pfad bei diesem Client | Belegstatus |
|
|
27
|
+
|---|---|---|
|
|
28
|
+
| Wurzel-Anweisungsdatei | `AGENTS.md` | **gemessen** (2026-09-26): steht in jeder Sitzung im Kontext (Aufschlüsselung der Kontextdateien, 2.972 Token), auch beim eigenen Agenten |
|
|
29
|
+
| Regeldateien | `.kiro/steering/*.md`; Lademodus im Frontmatter (`inclusion`) | **gemessen:** eine Datei ohne Frontmatter lädt in jeder Sitzung; eine mit `inclusion: fileMatch` nur, wenn eine passende Datei gelesen wird |
|
|
30
|
+
| Skills | `.kiro/skills/<name>/SKILL.md` | **gemessen:** aufgezählt (Ereignis `available_commands_update`, Art `skill`) und über `disclose_context` geladen – auch mit den Frontmatter-Feldern des Frameworks |
|
|
31
|
+
| Subagentenprofile | `.kiro/agents/<name>.md` (Frontmatter `tools` mit Kategorien) | `[DOK]` **`QK-6`**; die Wirkung ist Gegenstand von A1 |
|
|
32
|
+
| Berechtigungskonfiguration | `.kiro/agents/koolie.json` – ein **Agentenprofil** mit dem Feld `permissions.rules` (erzeugt aus `framework/runtime/permissions.json`) | **gemessen:** ein `deny` darin weist ab und nennt sich (*„Source: agent-profile"*). Warum kein `permissions.yaml`: Die Datei des Arbeitsbereichs liegt beim Client **außerhalb** des Repositoriums (`QK-1`) |
|
|
33
|
+
| Wahl des Agenten und der Engine | `.kiro/settings/cli.json` (`chat.defaultAgent`, `chat.agentEngine`) | **gemessen:** Mit ihr startet `kiro-cli chat` ohne Schalter mit Engine V3 und dem Agenten `koolie`; eine globale Einstellung unterliegt ihr |
|
|
34
|
+
| Hook-Konfiguration | `.kiro/hooks/koolie.json`, Form `{version: v1, hooks: [...]}` | **gemessen:** lädt in der **interaktiven** Sitzung; im Betrieb ohne Rückfragen gar nicht (Abschnitt 1b) |
|
|
35
|
+
| Planartefakt | `.kiro/specs/<name>/` (`requirements.md`, `design.md`, `tasks.md`) | **gemessen:** der Träger des Plans nach D-415; die Regel `16-plan-spezifikation.md` gibt ihm die Pflichtfelder |
|
|
36
|
+
| MCP-Konfiguration | `.kiro/settings/mcp.json` | `[DOK]` **`QK-7`**; das Framework liefert keinen Server aus |
|
|
37
|
+
| Projektverzeichnis im Hook-Befehl | **keine Variable – das Arbeitsverzeichnis** | **gemessen:** `cwd` der Eingabe und Arbeitsverzeichnis des Hook-Prozesses sind die Projektwurzel |
|
|
38
|
+
| Nutzerlokale Überschreibung | **kein Mechanismus** | Der Hersteller dokumentiert keine nutzerlokale Wurzel-Anweisung; das Pack liefert keine Beispieldatei aus |
|
|
39
|
+
|
|
40
|
+
## 1a. Semantikabbildung der Berechtigungen
|
|
41
|
+
|
|
42
|
+
Die Regelmenge liegt werkzeugneutral im Kern und wird bei der Installation übersetzt (D-18). **Dieser Client kennt keine Regel der Gestalt `Werkzeug(Muster)`**, sondern Regeln je **Fähigkeit** mit einer Liste von Mustern (`{capability, match, exclude, effect}`); die Abbildung erzeugt je Korb und Fähigkeit eine Regel (D-414).
|
|
43
|
+
|
|
44
|
+
| Neutrales Werkzeugverb | Fähigkeit bei diesem Client | Anmerkung |
|
|
45
|
+
|---|---|---|
|
|
46
|
+
| `read` | `fs_read` | Ein Muster ohne Wildcard trifft auch Unterverzeichnisse (gemessen: `.env` sperrte `sub/.env`) – breiter als wörtlich |
|
|
47
|
+
| `search` | `fs_read` | Keine eigene Fähigkeit; die Suchwerkzeuge sind lesend |
|
|
48
|
+
| `write` | `fs_write` | Ein Schreibverbot kann einen Teilbaum ausnehmen (`exclude`) – genutzt für `.kiro/specs/**` (D-415) |
|
|
49
|
+
| `exec` | `shell`, Muster **mit** Stern (`git push*`) | Ohne Stern vergleicht der Client wörtlich – gemessen: `echo` sperrte `echo hallo` nicht. Verkettete Befehle zerlegt er |
|
|
50
|
+
| `fetch` | `web_fetch`, `web_search` | Mit `deny "*"` nimmt der Client beide Werkzeuge ganz aus dem Werkzeugbestand |
|
|
51
|
+
| `mcp` | `mcp` | |
|
|
52
|
+
| `skill` | `skill`, **wörtlicher Name** | gemessen: die Freigabe auf einen Namen lädt genau diesen Skill |
|
|
53
|
+
|
|
54
|
+
| Weitere Eigenschaft | Wert |
|
|
55
|
+
|---|---|
|
|
56
|
+
| Profil | Name `koolie`, `tools: ["*"]`; ein eigener Agent erbt **keine** Freigabe des eingebauten – ohne `allow` war selbst das Lesen abgewiesen |
|
|
57
|
+
| Hook-Werkzeugnamen | `read_file`, `list_directory`, `file_search`, `grep_search`, `execute_pwsh` (Windows), `execute_bash` (Unix, aus dem Programmcode), `fs_write`, `str_replace`, `fs_append`, `delete_file` |
|
|
58
|
+
| Pfadfelder der Hook-Eingabe | `path`; bei `delete_file` **`targetFile`** |
|
|
59
|
+
| Sperrform des Schutz-Hooks | Exit 2 **mit Grund auf stderr** (`stderr-grund`, D-417) |
|
|
60
|
+
|
|
61
|
+
## 1b. Der aktive Agent – die Bedingung über der Berechtigungsschicht
|
|
62
|
+
|
|
63
|
+
🔴 **Die Berechtigungen des Frameworks wirken nur, wenn das Agentenprofil `koolie` der aktive Agent ist.** Der Client hält die Berechtigungsdatei des Arbeitsbereichs je Arbeitsplatz außerhalb des Repositoriums (`QK-1`); versionierbar ist allein ein Agentenprofil. Die Einstellungsdatei `.kiro/settings/cli.json` wählt es als Standard – gemessen: ohne Schalter startet die Sitzung damit, und eine **globale** Einstellung `chat.defaultAgent` unterliegt ihr. Der Client verbietet dem Agenten selbst, in `.kiro/settings/` zu schreiben (`QK-1`).
|
|
64
|
+
|
|
65
|
+
**Drei Wege führen an ihr vorbei, und keiner meldet sich laut:**
|
|
66
|
+
|
|
67
|
+
1. **Das Profil fehlt oder ist kein gültiges JSON.** Gemessen: Der Client fällt auf seinen eingebauten Agenten zurück und meldet es nur als Warnung auf stderr (*„agent … has an invalid config, using "default"“*); `.env` war danach lesbar. Sein eigenes Prüfkommando `agent validate` endet auch bei kaputtem JSON mit Exit 0. **Prüfung 96** hält Einstellung und Profil gegeneinander.
|
|
68
|
+
2. **Eine Regel nennt eine unbekannte Fähigkeit.** Gemessen: Der Client überspringt genau diese Regel und meldet es nur in seinem Protokoll. Prüfung 96 kennt die Liste der Fähigkeiten.
|
|
69
|
+
3. **Die Sitzung wählt einen anderen Agenten** (`--agent`) oder eine andere Engine (`--v2`, `--legacy-ui`). Das ist eine Entscheidung am Arbeitsplatz, und keine Prüfung sieht sie.
|
|
70
|
+
|
|
71
|
+
**Die Hooks laufen nur in der interaktiven Sitzung.** Gemessen in drei Formen des Betriebs ohne Rückfragen (JSON-Ausgabe, Textausgabe, Terminaloberfläche mit `--no-interactive`): Kein Hook lief. Der Agentenserver aktiviert Hooks nur, wenn der aufrufende Client es meldet, und das tut allein die Terminaloberfläche. **Im Betrieb ohne Rückfragen trägt deshalb allein das Agentenprofil** – dort wird zugleich jede Rückfrage zur Abweisung (`QK-1`).
|
|
72
|
+
|
|
73
|
+
**Die IDE** liest `.kiro/settings/cli.json` nach dem Programmcode ihrer Agent-Erweiterung nicht als Auswahl ihres Chat-Agenten; dort ist der Agent `koolie` im Chat zu wählen. **An einer IDE-Sitzung ist das nicht gemessen** (`K-162`).
|
|
74
|
+
|
|
75
|
+
## 2. Fähigkeitsmatrix
|
|
76
|
+
|
|
77
|
+
Einstufung je Zusage: `[TECHNISCH]` erzwungen · `[TEXTUELL]` nur Anweisung · `[NICHT ABBILDBAR]` kein Mechanismus. Regeln in `../README.md` Abschnitt 4. Gemessen ist an der Kommandozeile; eine Zeile, die die IDE betrifft, sagt es.
|
|
78
|
+
|
|
79
|
+
### R – Regelladung
|
|
80
|
+
|
|
81
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
82
|
+
|---|---|---|---|---|
|
|
83
|
+
| R1 | Wurzel-Anweisungsdatei wird ungefragt geladen | `AGENTS.md` steht in jeder Sitzung im Kontext | `[TECHNISCH]` | **gemessen** (2026-09-26, Aufschlüsselung der Kontextdateien): auch beim eigenen Agenten, ohne Eintrag in `resources` |
|
|
84
|
+
| R2 | Regeldateien mit Ladebedingungen | `.kiro/steering/*.md`, Frontmatter `inclusion` (`always`, `fileMatch`, `manual`, `auto`) | `[TECHNISCH]` | **gemessen:** Dateien ohne Frontmatter laden immer, eine `fileMatch`-Datei nicht ohne passende Datei. `model_decision` bildet auf unbedingtes Laden ab – der Lademodus `auto` wäre genauer, ist aber ungemessen, und eine Regel, die nicht lädt, wäre ein Verlust. ⚠️ **Über das Feld `resources` eines Agentenprofils eingebunden, lädt eine `fileMatch`-Datei ohne Bedingung** – das Profil des Frameworks bindet deshalb nichts ein |
|
|
85
|
+
| R3 | Regeln an Dateimuster bindbar | `inclusion: fileMatch` mit `fileMatchPattern` | `[TECHNISCH]` | **gemessen mit Gegenprobe:** eine Sonde mit `**/*.py` stand beim Lesen von `src/calc.py` im Kontext (Ereignis `steering_inclusion`) und wirkte, beim Lesen von `README.md` nicht |
|
|
86
|
+
| R4 | Bekanntes Zeichenlimit | **Vorgabe des Frameworks** – höchstens 40.000 Zeichen für das stets Geladene (D-387) | `[TEXTUELL]` | `[EMPF]`. **Für diesen Client ist kein Limit dokumentiert** (`QK-2`). Gemessen ist die feste Last: 8.228 Token für die Wurzel-Anweisung und sechs Regeldateien |
|
|
87
|
+
| R5 | Die geladenen Regelquellen sind vollständig aufzählbar | Die Sitzung meldet je Anfrage die Kontextdateien mit Pfad und Tokenzahl | `[TEXTUELL]` | **gemessen:** in der JSON-Ausgabe (`contextUsage.breakdown.contextFiles`) und in der Mitschrift (`steering_inclusion`). Eine Auskunft, keine Schranke |
|
|
88
|
+
| R6 | Keine Importe fremder Werkzeugformate | **Kein Schalter.** Der Hersteller dokumentiert keinen Import fremder Formate außer `AGENTS.md`, und das ist hier die Wurzel-Anweisung | `[NICHT ABBILDBAR]` | **Ersatz, geliefert:** die Auskunft in Abschnitt 7 und die Meldung von `install.py` über belegte Quellen im Benutzerprofil (D-411). ⚠️ Das eingebaute Steering des Clients (`architecture-selection`, `quick-spec`, `bug-fix`) steht in jeder Sitzung zur Wahl – gemessen |
|
|
89
|
+
|
|
90
|
+
### S – Skills
|
|
91
|
+
|
|
92
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
93
|
+
|---|---|---|---|---|
|
|
94
|
+
| S1 | Versionierte Skills im Repository | `.kiro/skills/<name>/SKILL.md` | `[TECHNISCH]` | **gemessen:** zwölf Skills des Frameworks aufgezählt |
|
|
95
|
+
| S2 | Gezielter Aufruf | Werkzeug `disclose_context` mit dem Namen des Skills | `[TECHNISCH]` | **gemessen:** freigegeben lädt der Skill, ohne Freigabe weist der Client den Aufruf ab |
|
|
96
|
+
| S3 | Werkzeugbeschränkung je Skill | **Kein Feld.** Die Felder des Frameworks (`allowed-tools`, `permissions`, `triggers`) werden angenommen und nicht ausgewertet | `[TEXTUELL]` | **gemessen:** ein Skill mit diesen Feldern lädt. **Was trägt, ist die globale Schicht:** das Agentenprofil und der Schutz-Hook, beide unabhängig vom Skill |
|
|
97
|
+
| S4 | Schreibende Skills nur benutzergetriggert | Framework-Konvention; ein Feld zum Ausschluss vom Modellzugriff ist nicht dokumentiert (`QK-4`) | `[TEXTUELL]` | `[EMPF]`. Das Profil gibt alle zwölf Skills frei, wie die Kernquelle |
|
|
98
|
+
| S5 | Die geladenen Skills sind aufzählbar | Ereignis `available_commands_update` mit Art je Eintrag | `[TEXTUELL]` | **gemessen:** Skills, eingebautes Steering und Agenten, je mit Herkunft (`bundled` oder Arbeitsbereich) |
|
|
99
|
+
|
|
100
|
+
### B – Berechtigungen
|
|
101
|
+
|
|
102
|
+
> **`[TECHNISCH]` heißt in diesem Block:** Die Engine setzt die Regel durch, **solange der Betriebsmodus die Berechtigungsprüfung nicht abschaltet** (D-35) – bei diesem Client der Schalter `--trust-all-tools` und die Freigabe „Trust all" (M2). Für dieses Pack kommt **eine gemessene Bedingung** hinzu: **Das Profil `koolie` muss der aktive Agent sein** (Abschnitt 1b). Fällt der Client auf seinen eingebauten Agenten zurück, trägt von diesem Block nichts. **Die zweite Linie ist der Schutz-Hook – nur in der interaktiven Sitzung.**
|
|
103
|
+
|
|
104
|
+
Die mit **Kern** markierten Zeilen entsprechen `_core_rules_integrity` im Agentenprofil (D-395); Prüfung 96 hält das Profil gegen die Kernquelle.
|
|
105
|
+
|
|
106
|
+
| ID | Zusage des Frameworks | Kern | Mechanismus beim Client | Einstufung | Beleg |
|
|
107
|
+
|---|---|---|---|---|---|
|
|
108
|
+
| B1 | Berechtigungen versioniert im Repository | ja | Agentenprofil `.kiro/agents/koolie.json`, gewählt durch `.kiro/settings/cli.json` | `[TECHNISCH]`, **bedingt** | **gemessen:** beide Träger liegen im Projekt und wirken ohne Schalter. **Die Bedingung:** der aktive Agent (Abschnitt 1b) – mit fehlendem oder kaputtem Profil stiller Rückfall, gemessen |
|
|
109
|
+
| B2 | Verweigern vor Rückfragen vor Erlauben | ja | `deny` vor `ask` vor `allow`, über alle Ebenen | `[TECHNISCH]` | **gemessen:** `deny` auf `.env` schlägt `allow` auf `**`; ein Schreiben unter `arbeit/` fällt in die Rückfrage, obwohl nichts es verbietet |
|
|
110
|
+
| B3 | Secret-Dateien per Pfadmuster lesegeschützt | ja | `deny fs_read` mit den Mustern der Kernquelle | `[TECHNISCH]` | **gemessen an einer realen Installation:** `.env` und `sub/.env` abgewiesen, `README.md` gelesen. ⚠️ Ein Muster, das die Kernquelle nicht führt (`id_ecdsa`), ließ das Profil durch – dort sperrte in der interaktiven Sitzung der Schutz-Hook (H2) |
|
|
111
|
+
| B4 | Framework- und Overlay-Artefakte schreibgeschützt | ja | `deny fs_write` auf `AGENTS.md`, `.kiro/**` ohne `.kiro/specs/**`, `.koolie/core/**`; **Das Overlay sperrt seit `1.17.0` allein der Schutz-Hook** (D-448); die Berechtigungsdatei führt es nicht mehr – nachgezählt an einer Installation am 2026-09-29 (D-468), und der läuft bei diesem Client nur in der interaktiven Sitzung (`K-181`). **Gemessen am 2026-09-30** (D-502): Im Betrieb ohne Rückfragen weist die Rückfrageregel `ask fs_write` einen Schreibversuch ins Overlay ab (Rückfrage → Abweisung); mit `--trust-all-tools` ging er durch – ohne Hook, und das Modell meldete den Verstoß gegen den Regeltext erst danach. Der Modus ist nach D-05 untersagt; eine statische Sperre im Profil schlüge das Mandat (M6); jeder Shell-Befehl außer fünf lesenden `git`-Befehlen fragt zurück | `[TECHNISCH]` | **gemessen:** Schreiben in `.koolie/core/` und `.kiro/steering/` abgewiesen (`deny`), in `.kiro/specs/` nur rückgefragt – die Ausnahme greift. ⚠️ **Grenze, nicht gemessen:** ein freigegebener lesender `git`-Befehl mit schreibender Option (`git diff --output=<pfad>`) |
|
|
112
|
+
| B5 | CI-, Quality-Gate- und Lockdateien schreibgeschützt | ja | `deny fs_write` mit den Lockmustern und den Schlitzen `<CI_CONFIG_PATHS>`, `<QUALITY_GATE_CONFIG_PATHS>` | `[TECHNISCH]` | **gemessen am Mechanismus** (Pfadmuster im `deny`, B4); die Schlitze füllt der Overlay Owner, die Lockmuster sind nicht einzeln angefahren. Shell wie B4 |
|
|
113
|
+
| B6 | Befehle per Muster verweigerbar | ja | `deny shell` mit Präfixmustern (`git push*`) | `[TECHNISCH]` | **gemessen:** `git push origin main` abgewiesen, auch in `git status && git push origin main`. ⚠️ **Grenze wie bei allen Packs:** `git -C . push origin main` trifft das Muster nicht – hier fällt es in die **Rückfrage** und nicht durch, weil kein `allow` es deckt |
|
|
114
|
+
| B7 | Schreiboperationen fragen zurück | – | `ask fs_write "**"` | `[TECHNISCH]` | **gemessen:** Schreiben unter `arbeit/` und Löschen (`delete_file`) rückgefragt; ohne Rückfragekanal abgewiesen |
|
|
115
|
+
| B8 | Netzwerkzugriff standardmäßig unterbunden | – | `deny web_fetch`/`web_search "*"` und `deny shell` auf `curl`, `wget`, `ssh`, `scp` | `[TECHNISCH]` für die Web-Werkzeuge und diese vier Programme; `[TEXTUELL]` darüber hinaus | **gemessen in einem Baum ohne Regeltext:** mit `deny "*"` fehlen beide Web-Werkzeuge im Werkzeugbestand der Sitzung (15 statt 17). ⚠️ Jedes andere netzfähige Programm fragt zurück (B7), ist aber nicht verboten |
|
|
116
|
+
| B9 | Nutzerlokale Konfiguration kann nur verschärfen | – | Keine Rangfolge der Ebenen; die restriktivste Wirkung gewinnt | `[TECHNISCH]` | `[DOK]` **`QK-1`**; gemessen ist die Hälfte zur Wahl des Agenten: die globale Einstellung unterliegt der des Arbeitsbereichs. ⚠️ **Die Sitzung kann Rückfragen überspringen** (M2) |
|
|
117
|
+
| B10 | Externer Abruf auf freigegebene Domains beschränkbar | – | Muster je Adresse in `web_fetch` | `[TECHNISCH]` | `[DOK]` **`QK-1`**. Das Framework nutzt die strengste Form – alles verboten (B8, D-59) |
|
|
118
|
+
|
|
119
|
+
### H – Hooks
|
|
120
|
+
|
|
121
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
122
|
+
|---|---|---|---|---|
|
|
123
|
+
| H1 | Prüfung vor Werkzeugausführung | `PreToolUse` in `.kiro/hooks/koolie.json`, Matcher als regulärer Ausdruck über die Werkzeugnamen | `[TECHNISCH]`, **nur interaktiv** | **gemessen:** Der Hook läuft bei jedem Lese-, Such-, Schreib- und Shell-Aufruf, Eingabe `{session_id, hook_event_name, cwd, tool_name, tool_input}`. Im Betrieb ohne Rückfragen läuft er **nicht** (Abschnitt 1b) |
|
|
124
|
+
| H2 | Prüfung kann **blockieren** | Exit 2 **und** ein Grund auf stderr | `[TECHNISCH]`, **nur interaktiv** | 🔴 **Gemessen, und der schwerste Befund des Packs** (D-417): Mit der Standardform (Grund auf stdout, Exit 2) kam der Köderinhalt heraus; der Hook endete nachweislich mit Exit 2. **Mit dem Grund auf stderr wurde derselbe Zugriff in drei von drei Läufen abgewiesen**, `README.md` jeweils gelesen – in einem Baum ohne Regeltext. **Prüfung 86** hält Manifest, Skript und Kommando zusammen |
|
|
125
|
+
| H3 | Statusmeldung beim Sitzungsstart | `SessionStart` mit `hook-overlay-status.py` | `[TECHNISCH]`, **nur interaktiv** | **gemessen:** die Meldung steht im Kontext der Sitzung (`HOOK_INSTRUCTION`) und wurde wörtlich zitiert |
|
|
126
|
+
| H4 | Eingabeschema und Pfadidentität des Schutz-Hooks | Ereignisprüfung, Pfadfelder `path` und `targetFile`, alle Muster ohne Rücksicht auf Groß-/Kleinschreibung; `hook_fail_closed` steht auf `true`. **Grenze:** Ein Hook prüft **vor** dem Zugriff (D-397) | `[TECHNISCH]` für die Musterprüfung, **mit der Zeitlücke** | **gemessen:** das Schema von `PreToolUse` für alle vier Werkzeugklassen. ⚠️ **Das Feld `targetFile` des Löschwerkzeugs fiel erst im Abnahmelauf auf** – vorher hätte der Hook den Pfad nur als Rohtext geprüft |
|
|
127
|
+
|
|
128
|
+
### A – Agentenprofile
|
|
129
|
+
|
|
130
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
131
|
+
|---|---|---|---|---|
|
|
132
|
+
| A1 | Rein lesendes Reviewprofil | `.kiro/agents/fw-reviewer.md` mit `tools: [read]`; Unteragenten erben die Regeln der Sitzung | `[TEXTUELL]` | `BELEG OFFEN` (2026-09-26): Die Gestalt folgt `QK-6`; der Start eines Unteragenten (`invoke_sub_agent`) fällt in die Rückfrage und ist ohne Rückfragekanal nicht messbar |
|
|
133
|
+
| A2 | Rein lesendes Analyseprofil für Modus M1 | Der Client führt einen Modus `plan` (*„without making any changes"*) | `[TEXTUELL]` | **gemessen ist nur die Existenz** (Modusliste der Sitzung); `BELEG OFFEN` (2026-09-26) für seine Wirkung |
|
|
134
|
+
|
|
135
|
+
### M – Modi und Sitzungsfreigaben
|
|
136
|
+
|
|
137
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
138
|
+
|---|---|---|---|---|
|
|
139
|
+
| M1 | Standardmodus fragt bei Schreiben und Befehlen zurück | Rückfrageregeln des Profils; in der IDE zusätzlich `Supervised` | `[TECHNISCH]` | **gemessen** an der Kommandozeile (B7); für die IDE `[DOK]` **`QK-1`** |
|
|
140
|
+
| M2 | Modus ohne Rückfragen ausschließbar | **Kein Ausschluss.** `--trust-all-tools` und „Trust all" überspringen Rückfragen; ein `deny` gilt weiter | `[TEXTUELL]` | `[DOK]` **`QK-1`**. ⚠️ Ein `deny` bleibt auch dann wirksam – das ist mehr als bei den übrigen Packs, aber keine Sperre des Modus |
|
|
141
|
+
| M3 | Freigabe auf die Sitzung begrenzbar | Stufe „This session" bei jeder Rückfrage | `[TECHNISCH]` | `[DOK]` **`QK-1`**; `BELEG OFFEN` (2026-09-26): eine Rückfrage an einen Menschen ist ohne Rückfragekanal nicht messbar |
|
|
142
|
+
| M4 | Eigener Planungsmodus für Modus M2 | Modus `spec` mit Ablage im Repositorium (`.kiro/specs/`) und der Regel `16-plan-spezifikation.md` (D-415) | `[TEXTUELL]` | **gemessen mit Gegenprobe:** Mit der Regel legte die Sitzung Anforderungen mit Quelle und offenen Fragen, einen Entwurf mit Zieldateiliste und Kontrollstufe und eine Aufgabenliste mit Status `entwurf` an und setzte nichts um; ohne die Regel griff sie zur Planvorlage des Frameworks und legte keine Spezifikation an. ⚠️ Ihr Schlusssatz *„erfordert keine Freigabe"* widersprach der Regel |
|
|
143
|
+
| M6 | Modus mit selbsttätiger Übernahme von Dateiänderungen begrenzbar | IDE: `Autopilot` (`kiroAgent.agentAutonomy`) | `[TEXTUELL]` | `[DOK]` **`QK-1`**; die Regeln des Profils gelten auch dort |
|
|
144
|
+
| M7 | Modus, der selbst beurteilt, was sicher ist, begrenzbar | Modus `autonomous` | `[TEXTUELL]` | **gemessen ist nur die Existenz** (Modusliste); `BELEG OFFEN` (2026-09-26) für seine Begrenzbarkeit |
|
|
145
|
+
|
|
146
|
+
### X – Externe Anbindung
|
|
147
|
+
|
|
148
|
+
| ID | Zusage des Frameworks | Mechanismus beim Client | Einstufung | Beleg |
|
|
149
|
+
|---|---|---|---|---|
|
|
150
|
+
| X1 | Keine externe Anbindung ohne Einzelfreigabe | `ask mcp "*"` im Profil; das Framework liefert keinen Server aus | `[TECHNISCH]` | `[DOK]` **`QK-1`**, **`QK-7`**; `BELEG OFFEN` (2026-09-26) für die Wirkung – im Messbaum stand kein Server. ⚠️ Die Benutzerkonfiguration kann Server führen (Abschnitt 7.2) |
|
|
151
|
+
| X2 | Art und Ort der Codebasis-Indexierung bekannt | Kein Mechanismus zur Steuerung bekannt | `[NICHT ABBILDBAR]` | `BELEG OFFEN (dauerhaft)` – von außen nicht zu beobachten (`K-20`, D-292). **Kein Ersatz durch das Framework.** Dokumentiert ist die Speicherung der Inhalte je Tarif mit Abschaltung der Weitergabe (`QK-8`) – vor den Messungen abgeschaltet |
|
|
152
|
+
|
|
153
|
+
## 3. Zusammenfassung der Durchsetzungstiefe
|
|
154
|
+
|
|
155
|
+
> **Zählregel (normativ für diese Tabelle):** Eine Zeile zählt bei ihrer **schwächsten** Einstufung (D-47). Prüfung 31 rechnet die Summen aus der Matrix nach.
|
|
156
|
+
|
|
157
|
+
| Klasse | Anzahl | davon Kernzusagen |
|
|
158
|
+
|---|---|---|
|
|
159
|
+
| `[TECHNISCH]` | **21 von 35** | 6 von 6 (B1 bis B6) |
|
|
160
|
+
| `[TEXTUELL]` | **12 von 35** | 0 von 6 |
|
|
161
|
+
| `[NICHT ABBILDBAR]` | **2 von 35** | 0 von 6 |
|
|
162
|
+
|
|
163
|
+
**Belegstand:** `BELEG OFFEN` sagen **A1**, **A2**, **M3**, **M7** und **X1**, dazu **X2** dauerhaft. Die Zeilen der interaktiven Sitzung (H1 bis H3) sind gemessen; die der IDE stehen auf der Dokumentation (`K-162`).
|
|
164
|
+
|
|
165
|
+
## 4. Kernzusagen ohne technische Durchsetzung
|
|
166
|
+
|
|
167
|
+
**Keine.** Alle sechs Kernzusagen sind `[TECHNISCH]` – unter der Bedingung des aktiven Agenten (Abschnitt 1b). Sie steht in B1 und in der Vorbemerkung des B-Blocks, weil sie keine Zeile einzeln betrifft, sondern alle zugleich.
|
|
168
|
+
|
|
169
|
+
## 5. Bekannte Abweichungen im Verhalten
|
|
170
|
+
|
|
171
|
+
- **Die Berechtigungsdatei ist ein Agentenprofil** (`permissions_format` `kiro-agent`, D-414). Sie ist JSON, führt aber keine Körbe `deny`/`ask`/`allow` aus Regeln der Gestalt `Werkzeug(Muster)`. Deshalb erreichen dieses Pack nicht: **Prüfung 2**, **Prüfung 37**, **Prüfung 42**, **Prüfung 43** und **Prüfung 54**; nur zum Teil **Prüfung 59** und **Prüfung 89** (ihr Gegenstand (c), die Pfade des Overlays im `deny`, entfällt). An ihre Stelle tritt die Prüfung des Agentenprofils (Abschnitt 1b). Der Prüfapparat hält diese Liste gegen seine eigene Liste der formatgebundenen Prüfungen.
|
|
172
|
+
- **Ein eigener Agent erbt keine Freigaben.** Ohne `allow` wird selbst das Lesen im Arbeitsbereich abgewiesen – das Profil führt die Freigaben der Kernquelle vollständig.
|
|
173
|
+
- **Die Hooks laufen nur interaktiv**, und der Schutz-Hook braucht seinen Grund auf stderr (Abschnitt 1b, H2).
|
|
174
|
+
- **Das Schreibverbot auf die Laufzeitschicht nimmt `.kiro/specs/` aus** (D-415) – dort liegt das Planartefakt. Der Schutz-Hook führt dieselbe Ausnahme.
|
|
175
|
+
- **Ein Befehl, den ein Präfixmuster nicht trifft, fällt in die Rückfrage** und nicht durch – anders als bei Packs, deren `allow` breiter ist.
|
|
176
|
+
- **Die Dokumentation widerspricht sich an vier Stellen** (Anhang 31.4.4); zwei hat die Messung entschieden, eine hat sie widerlegt.
|
|
177
|
+
|
|
178
|
+
## 6. Installation und Prüfung
|
|
179
|
+
|
|
180
|
+
```text
|
|
181
|
+
python .koolie/core/install.py --target /pfad/zum/projekt --client kiro
|
|
182
|
+
python .koolie/core/tests/scripts/validate-framework.py
|
|
183
|
+
```
|
|
184
|
+
|
|
185
|
+
🔴 **Danach:** `kiro-cli` im Projektverzeichnis starten – nur dort gilt `.kiro/settings/cli.json`. Nicht mit `--agent`, `--v2` oder `--legacy-ui` starten. In der IDE den Agenten `koolie` im Chat wählen. `install.py` nennt diese Schritte nach der Installation; nach jeder Hebung nennt es, dass Profil und Einstellung Saat sind und nicht angefasst werden.
|
|
186
|
+
|
|
187
|
+
Vor der ersten produktiven Nutzung sind die Basistests des Testkatalogs gegen diesen Client zu fahren und zu protokollieren.
|
|
188
|
+
|
|
189
|
+
## 7. Anweisungs- und Konfigurationsquellen außerhalb des Projekts
|
|
190
|
+
|
|
191
|
+
**Pflichtabschnitt** (D-34). Solche Quellen haben nach Regel 2.6 der Prioritätshierarchie **keine Ebene**.
|
|
192
|
+
|
|
193
|
+
**Erhebungsstand: 2026-09-26**, Kommandozeile `2.24.1`, erhoben mit der Herstellerdokumentation (`QK-1`, `QK-2`, `QK-6`, `QK-7`), der Modus- und Befehlsliste der Sitzung und `install.py` (`import_channels_report`).
|
|
194
|
+
|
|
195
|
+
### 7.1 Anweisungsquellen
|
|
196
|
+
|
|
197
|
+
| Quelle | Ladebedingung | Belegstatus | Maßnahme des Frameworks |
|
|
198
|
+
|---|---|---|---|
|
|
199
|
+
| `~/.kiro/steering/` (auch `AGENTS.md` dort) | in jeder Sitzung neben dem Steering des Projekts | `[DOK]` `QK-2` | Auskunft; `install.py` meldet sie, wenn belegt |
|
|
200
|
+
| `~/.kiro/skills/` | in jeder Sitzung verfügbar | `[DOK]` `QK-4` | Auskunft; `install.py` meldet sie |
|
|
201
|
+
| `~/.kiro/agents/` | wählbar mit `--agent`; bei gleichem Namen gewinnt das Profil des Arbeitsbereichs | `[DOK]` `QK-6` | Auskunft; `install.py` meldet sie |
|
|
202
|
+
| Eingebautes Steering und eingebaute Agenten des Clients | in jeder Sitzung zur Wahl | **gemessen** (Befehlsliste: `architecture-selection`, `quick-spec`, `bug-fix`, `general-task-execution`, `context-gatherer`) | **keine** – nicht abschaltbar, aber aufgezählt (S5) |
|
|
203
|
+
|
|
204
|
+
### 7.2 Konfigurationsquellen
|
|
205
|
+
|
|
206
|
+
| Quelle | Wirkung | Belegstatus |
|
|
207
|
+
|---|---|---|
|
|
208
|
+
| `~/.kiro/settings/permissions.yaml` und `~/.kiro/workspace-roots/<hash>/permissions.yaml` | Regeln des Arbeitsplatzes; ein `deny` dort gilt zusätzlich, ein `allow` hebt kein `deny` des Profils auf | `[DOK]` `QK-1` |
|
|
209
|
+
| `~/.kiro/settings/cli.json` | globale Einstellungen; `chat.defaultAgent` dort unterliegt der Datei des Arbeitsbereichs | **gemessen** (Wiederherstellung der Datei per Bytevergleich geprüft) |
|
|
210
|
+
| `~/.kiro/settings/mcp.json` | MCP-Server des Arbeitsplatzes | `[DOK]` `QK-7` |
|
|
211
|
+
| `managed-settings.json` | Vorgaben der Organisation (nur `deny` und `ask`) | `[DOK]` `QK-1` |
|
|
212
|
+
|
|
213
|
+
### 7.3 Was dieser Abschnitt nicht leistet
|
|
214
|
+
|
|
215
|
+
**Eine Auskunft ist keine Schranke**, und ein **Abwesenheitsbeleg altert**. Prüfung 19 prüft die Anwesenheit dieser Auskunft, nicht ihre Richtigkeit.
|
|
216
|
+
|
|
217
|
+
## 8. Änderungsverlauf
|
|
218
|
+
|
|
219
|
+
| Version | Datum | Änderung | Autor (Rolle) |
|
|
220
|
+
|---|---|---|---|
|
|
221
|
+
| 0.1.0 | 2026-09-26 | **Angelegt (`CR-2026-150`, D-414 bis D-417).** Das vierte Client Pack, gebaut mit Zugang zum Client statt nur aus der Dokumentation. **Die Berechtigungen stehen in einem Agentenprofil**, weil die Datei des Arbeitsbereichs außerhalb des Repositoriums liegt; **die Spezifikationen des Clients sind das Planartefakt** (D-415); **der Schutz-Hook sperrte mit der Standardform nichts** und führt eine eigene Sperrform (D-417). **Prüfung 96** neu | `<FRAMEWORK_OWNER>` |
|
|
222
|
+
| 0.1.2 | 2026-09-30 | Zeile B4: der Schutz des Overlays ohne Hook gemessen (`CR-2026-164`, D-502, `K-181`) – die Rückfrageregel trägt ohne Rückfragekanal, `--trust-all-tools` öffnet das Overlay | `<FRAMEWORK_OWNER>` |
|
|
223
|
+
| 0.1.1 | 2026-09-29 | Zeile B4 folgt dem Erzeugnis: Das Agentenprofil sperrt das Overlay seit `1.17.0` nicht mehr, das tut allein der Schutz-Hook, und der läuft nur interaktiv (D-448, `K-181`; `CR-2026-158`, D-468) | `<FRAMEWORK_OWNER>` |
|
|
@@ -0,0 +1,300 @@
|
|
|
1
|
+
{
|
|
2
|
+
"_comment": "Maschinenlesbare Pfad- und Semantikabbildung dieses Client Packs. Die menschenlesbare Fassung mit Faehigkeitsmatrix steht in CLIENT_PACK.md. Gemessen am 2026-09-26 mit kiro-cli 2.24.1 (Engine V3, KAS 0.66.8) im Rahmen des Baus (CR-2026-150, tests/protocols/2026-09-26-bau-kiro.md). DREI DINGE SIND HIER ANDERS ALS BEI DEN DREI UEBRIGEN PACKS, und alle drei sind gemessen: (1) Die Berechtigungen stehen in einem AGENTENPROFIL, weil die Berechtigungsdatei des Arbeitsbereichs beim Client ausserhalb des Repositoriums liegt; das Profil wirkt nur als aktiver Agent, und die Einstellungsdatei des Arbeitsbereichs waehlt es. (2) Die Hooks laufen nur in der interaktiven Sitzung - im Betrieb ohne Rueckfragen aktiviert der Client sie nicht. (3) Fehlt das Profil oder ist es kein gueltiges JSON, faellt der Client still auf seinen eingebauten Agenten zurueck.",
|
|
3
|
+
"client": "kiro",
|
|
4
|
+
"runtime_dir": ".kiro",
|
|
5
|
+
"root_instruction_file": "AGENTS.md",
|
|
6
|
+
"permissions_file": ".kiro/agents/koolie.json",
|
|
7
|
+
"permissions_format": "kiro-agent",
|
|
8
|
+
"_permissions_format_note": "Die dritte Ausgabeform (D-414): ein Agentenprofil mit dem Feld permissions.rules aus Regeln der Gestalt {capability, match, effect}. Warum kein permissions.yaml: Der Client haelt die Datei des Arbeitsbereichs je Arbeitsplatz unter ~/.kiro/workspace-roots/<hash>/ - ein geklontes Repositorium kann laut Hersteller keine Regeln mitbringen. Das Agentenprofil liegt im Projekt und ist versioniert. Gemessen: Ein deny darin weist ab und nennt sich ('Source: agent-profile'). Acht Pruefungen lesen die Koerbe einer JSON-Datei deny/ask/allow und erreichen diese Form nicht; Abschnitt 5 des Packs nennt sie (Pruefung 87), Pruefung 96 tritt fuer dieses Pack an ihre Stelle.",
|
|
9
|
+
"permission_profile_name": "koolie",
|
|
10
|
+
"permission_profile_description": "Agent des Koolie-Frameworks: Lesen im Arbeitsbereich, Schreiben und Ausfuehren mit Rueckfrage, Secrets und die Traeger des Frameworks gesperrt.",
|
|
11
|
+
"permission_profile_tools": [
|
|
12
|
+
"*"
|
|
13
|
+
],
|
|
14
|
+
"_permission_profile_tools_note": "Alle Werkzeuge stehen dem Agenten zur Verfuegung; was er damit darf, sagen die Regeln. Ein eigener Agent erbt KEINE Standardfreigaben des eingebauten Agenten - gemessen am 2026-09-26: ohne allow-Regel wurde selbst das Lesen im Arbeitsbereich abgewiesen (K4). Die allow-Regeln des Kerns (Lesen, fuenf lesende git-Befehle, zwoelf Skills) sind deshalb die ganze Freigabe.",
|
|
15
|
+
"client_settings_file": ".kiro/settings/cli.json",
|
|
16
|
+
"client_settings": {
|
|
17
|
+
"chat.agentEngine": "v3",
|
|
18
|
+
"chat.defaultAgent": "koolie"
|
|
19
|
+
},
|
|
20
|
+
"_client_settings_note": "Die Einstellungsdatei des Arbeitsbereichs, gemessen am 2026-09-26: Mit ihr startet 'kiro-cli chat' OHNE Schalter mit der Engine V3 und dem Agenten koolie, und eine globale Einstellung chat.defaultAgent unterliegt ihr (K2, K17). Ohne sie waere die Engine V2 der Standard, die weder das Profilfeld permissions noch die Hook-Datei .kiro/hooks/ kennt. Der Client verbietet dem Agenten fest, in .kiro/settings/ zu schreiben. Pruefung 96 haelt die Datei gegen das Profil: Zeigt chat.defaultAgent auf ein Profil, das es nicht gibt oder das kein gueltiges JSON ist, faellt der Client still auf seinen eingebauten Agenten zurueck (K15, K16).",
|
|
21
|
+
"skills_dir": ".kiro/skills",
|
|
22
|
+
"agents_dir": ".kiro/agents",
|
|
23
|
+
"pack_runtime_dir": ".kiro/steering",
|
|
24
|
+
"has_rule_triggers": true,
|
|
25
|
+
"core_skill_prefix": "fw-",
|
|
26
|
+
"core_paths": [
|
|
27
|
+
".kiro/README.md"
|
|
28
|
+
],
|
|
29
|
+
"seed_paths": [],
|
|
30
|
+
"project_owned_hint": [
|
|
31
|
+
".kiro/steering/2N-overlay-<name>.md (Overlay-Regelerweiterungen)",
|
|
32
|
+
".kiro/steering/40-tech-<name>.md (Packs ohne Quelle im Kern)",
|
|
33
|
+
".kiro/agents/koolie.json (Projektwerte in den match-Listen, zusaetzliche deny-Regeln)",
|
|
34
|
+
".kiro/settings/cli.json (weitere Einstellungen des Arbeitsbereichs)",
|
|
35
|
+
".kiro/specs/** (Planartefakte des Clients, D-415)",
|
|
36
|
+
".kiro/skills/prj-*/ (projektspezifische Skills)",
|
|
37
|
+
".koolie/project-overlay/tech-packs/** (projekteigene Packs)",
|
|
38
|
+
".koolie/project-overlay/** (das gesamte Overlay)"
|
|
39
|
+
],
|
|
40
|
+
"_post_steps_note": "Schritte, die install.py nach einer Installation und nach einer Hebung zusaetzlich nennt, weil ohne sie ein Teil des Packs nicht traegt - und nichts es meldet.",
|
|
41
|
+
"post_install_steps": [
|
|
42
|
+
"kiro-cli im Projektverzeichnis starten: Nur dort gilt .kiro/settings/cli.json (Engine V3, Agent koolie). Wer mit --agent einen anderen Agenten oder mit --v2/--legacy-ui eine andere Engine waehlt, arbeitet ohne die Berechtigungen des Frameworks (CLIENT_PACK.md Abschnitt 1b).",
|
|
43
|
+
"Die Hooks laufen nur in der interaktiven Sitzung. Im Betrieb ohne Rueckfragen (--no-interactive) traegt allein das Agentenprofil (CLIENT_PACK.md Abschnitt 1b).",
|
|
44
|
+
"In der IDE den Agenten koolie im Chat waehlen und pruefen, dass er aktiv ist (CLIENT_PACK.md Abschnitt 1b)."
|
|
45
|
+
],
|
|
46
|
+
"post_update_steps": [
|
|
47
|
+
"install.py --update fasst .kiro/agents/koolie.json und .kiro/settings/cli.json nicht an (Saat). Pruefung 96 meldet, wenn sie nicht mehr zur Kernquelle passen."
|
|
48
|
+
],
|
|
49
|
+
"runtime_placeholders": {
|
|
50
|
+
"<RUNTIME_DIR>": ".kiro",
|
|
51
|
+
"<ROOT_INSTRUCTION_FILE>": "AGENTS.md",
|
|
52
|
+
"<ROOT_INSTRUCTION_LOCAL>": "AGENTS.local.md",
|
|
53
|
+
"<PERMISSIONS_FILE>": ".kiro/agents/koolie.json",
|
|
54
|
+
"<SKILLS_DIR>": ".kiro/skills",
|
|
55
|
+
"<RULES_DIR>": ".kiro/steering",
|
|
56
|
+
"<AGENTS_DIR>": ".kiro/agents",
|
|
57
|
+
"<HOOKS_FILE>": ".kiro/hooks/koolie.json",
|
|
58
|
+
"<MCP_FILE>": ".kiro/settings/mcp.json",
|
|
59
|
+
"<CLIENT_NAME>": "Kiro"
|
|
60
|
+
},
|
|
61
|
+
"_runtime_placeholders_note": "<ROOT_INSTRUCTION_LOCAL> ist bei diesem Client KEIN Mechanismus - der Hersteller dokumentiert keine nutzerlokale Wurzel-Anweisung, und das Pack liefert keine Beispieldatei aus. Der Name steht hier, weil die Kernquelle ein Schreibverbot auf ihn fuehrt; ein Verbot auf eine Datei, die nichts bewirkt, ist harmlos. <MCP_FILE>: die Serverliste des Arbeitsbereichs; das Framework liefert keinen Server aus.",
|
|
62
|
+
"root_instruction_local_absent": true,
|
|
63
|
+
"_root_instruction_local_absent_note": "Das Hauptdokument erklaert an der Stelle der persoenlichen Ergaenzungsdatei, dass es sie bei diesem Pack nicht gibt (build/assemble.py, lokale_ergaenzung). Die Weiche ist dieses Feld und nicht das Fehlen der Datei - sonst bettete der Bau bei jedem Fehlen still eine Erklaerung ein.",
|
|
64
|
+
"permission_tools": {
|
|
65
|
+
"read": [
|
|
66
|
+
"fs_read"
|
|
67
|
+
],
|
|
68
|
+
"search": [
|
|
69
|
+
"fs_read"
|
|
70
|
+
],
|
|
71
|
+
"write": [
|
|
72
|
+
"fs_write"
|
|
73
|
+
],
|
|
74
|
+
"exec": [
|
|
75
|
+
"shell"
|
|
76
|
+
],
|
|
77
|
+
"fetch": [
|
|
78
|
+
"web_fetch",
|
|
79
|
+
"web_search"
|
|
80
|
+
],
|
|
81
|
+
"mcp": [
|
|
82
|
+
"mcp"
|
|
83
|
+
],
|
|
84
|
+
"skill": [
|
|
85
|
+
"skill"
|
|
86
|
+
]
|
|
87
|
+
},
|
|
88
|
+
"_permission_tools_note": "Faehigkeiten, keine Werkzeugnamen: Der Client wertet eine Regel je Faehigkeit aus, nicht je Werkzeug. Suchen hat keine eigene Faehigkeit; die Suchwerkzeuge (grep_search, file_search) sind lesend und fallen unter fs_read - der Kern gibt search ohnehin nur frei. Eine Faehigkeit ausserhalb der Liste des Herstellers wird vom Client uebersprungen und nur im Protokoll gemeldet (K23); clientmap.KIRO_FAEHIGKEITEN haelt die Liste, und die Abbildung bricht bei einer unbekannten ab.",
|
|
89
|
+
"permission_tools_bare": [],
|
|
90
|
+
"permission_path_prefix": "",
|
|
91
|
+
"permission_exec_match": "prefix",
|
|
92
|
+
"permission_exec_suffix": "*",
|
|
93
|
+
"_permission_exec_note": "Die Befehlsseite wirkt nur mit Stern praefixbasiert - gemessen am 2026-09-26: 'git push*' sperrt 'git push origin main', auch als Teil von 'git status && git push origin main' (der Client zerlegt verkettete Befehle); 'echo' OHNE Stern sperrte 'echo hallo' NICHT (woertlicher Vergleich). Grenze wie bei allen Packs: 'git -C . push origin main' trifft 'git push*' nicht und lief (K13, D-123).",
|
|
94
|
+
"permission_rule_exclude": {
|
|
95
|
+
"write <RUNTIME_DIR>/**": [
|
|
96
|
+
".kiro/specs/**"
|
|
97
|
+
]
|
|
98
|
+
},
|
|
99
|
+
"_permission_rule_exclude_note": "D-415: .kiro/specs/ ist die Ablage des Planartefakts dieses Clients und nach D-415 der Traeger des Plans - kein Artefakt des Frameworks. Das Schreibverbot auf die Laufzeitschicht nimmt genau diesen Teilbaum aus (Feld exclude der Regel); ein allow koennte es nicht, weil deny gewinnt. Das Schreiben dort bleibt ueber die ask-Regel des Kerns rueckfragepflichtig. Der Schutz-Hook fuehrt dieselbe Ausnahme.",
|
|
100
|
+
"permissions_extra": {},
|
|
101
|
+
"settings_extra": {},
|
|
102
|
+
"_settings_extra_note": "Ausdrueckliche Abwesenheit, keine Luecke (D-155): Das Agentenprofil fuehrt keine Zusatzschluessel neben permissions, und die Einstellungen des Arbeitsbereichs stehen in einer eigenen Datei (client_settings, Pruefung 96). Beide Felder sind leer, weil es bei dieser Ausgabeform nichts auf zwei Ebenen zu verteilen gibt - Pruefung 54 erreicht sie nicht (D-416).",
|
|
103
|
+
"hooks_format": "kiro-v1",
|
|
104
|
+
"_hooks_format_note": "Gemessen am 2026-09-26 in interaktiven Sitzungen: .kiro/hooks/*.json mit {version: v1, hooks: [...]}; Ausloeser je Eintrag (PreToolUse, SessionStart gueltig; 'PromptSubmit' der Dokumentation ist es NICHT, der Client fuehrt 'UserPromptSubmit'); der Matcher ist ein regulaerer Ausdruck ueber den Werkzeugnamen - '*' allein kompiliert nicht; Zeitlimit in Sekunden. Exit 2 sperrt. IM BETRIEB OHNE RUECKFRAGEN LAUFEN KEINE HOOKS - der Client aktiviert sie dort nicht (K5).",
|
|
105
|
+
"hook_block_form": "stderr-grund",
|
|
106
|
+
"_hook_block_form_note": "DER SCHWERSTE BEFUND DIESES PACKS (D-417), gemessen am 2026-09-26 in interaktiven Sitzungen an einem Baum ohne Regeltext: Mit der Standardform des Schutz-Hooks - {\"decision\": \"block\"} auf stdout und Exit 2 - endete der Hook mit Exit 2 (von einer Huelle mitgeschrieben), und der Koederinhalt kam heraus. Der Client wertet Exit 2 zwar als Sperre, uebergibt als Grund aber allein stderr, und ein LEERER Grund laesst die Operation laufen. Dieselbe Sperre mit dem Grund auf stderr wurde abgewiesen ('denied'). Dieselbe Bauform wie D-347 bei openai-codex. Pruefung 86 haelt Manifest, Skript und erzeugtes Kommando zusammen.",
|
|
107
|
+
"hook_tools": {
|
|
108
|
+
"read": [
|
|
109
|
+
"read_file",
|
|
110
|
+
"list_directory"
|
|
111
|
+
],
|
|
112
|
+
"search": [
|
|
113
|
+
"file_search",
|
|
114
|
+
"grep_search"
|
|
115
|
+
],
|
|
116
|
+
"exec": [
|
|
117
|
+
"execute_pwsh",
|
|
118
|
+
"execute_bash"
|
|
119
|
+
],
|
|
120
|
+
"write": [
|
|
121
|
+
"fs_write",
|
|
122
|
+
"str_replace",
|
|
123
|
+
"fs_append",
|
|
124
|
+
"delete_file"
|
|
125
|
+
]
|
|
126
|
+
},
|
|
127
|
+
"hook_tools_unerhoben": ["mcp"],
|
|
128
|
+
"_hook_tools_unerhoben_note": "Das Verb mcp der Kernquelle (seit 1.20.0, K-184, D-486) ist fuer diesen Client NICHT gemessen: Weder der Werkzeugname eines MCP-Aufrufs in der Hook-Eingabe noch das Ereignis, das ihn traegt, sind an einer Installation aufgezeichnet. Ein Matcher auf eine ungemessene Form waere eine Zusage ohne Mechanismus (D-78); das Verb steht deshalb hier und nicht unter hook_tools_absent. Bis zu einer Messung fragt jeder MCP-Aufruf den Menschen, wo die Berechtigungsschicht es verlangt (D-459); der Inhalt wird vom Schutz-Hook nicht geprueft.",
|
|
129
|
+
"_hook_tools_note": "Die Werkzeugnamen der Engine V3, gemessen am 2026-09-26: Die Sitzung hat ihren Werkzeugbestand genannt (read_file, list_directory, file_search, grep_search, fs_write, str_replace, fs_append, delete_file, execute_pwsh, web_fetch, remote_web_search, invoke_sub_agent und weitere), und der Hook hat fuenf davon mit ihrer Eingabe aufgezeichnet. execute_pwsh ist das Ausfuehrungswerkzeug unter Windows; execute_bash steht daneben als das unter Unix - aus dem Programmcode des Clients, NICHT an einer Installation gemessen. Ein zusaetzlicher Name im Matcher ist eine Verschaerfung.",
|
|
130
|
+
"hook_project_dir_expr": ".",
|
|
131
|
+
"_hook_project_dir_expr_note": "Der Hook-Prozess steht im Projektverzeichnis - gemessen am 2026-09-26: cwd der Hook-Eingabe und Arbeitsverzeichnis des Prozesses sind die Projektwurzel. Eine Variable mit dem Projektpfad fuehrt die Umgebung nicht; sie fuehrt KIRO_SESSION_ID und Angaben zum Client.",
|
|
132
|
+
"hook_fail_closed": true,
|
|
133
|
+
"_hook_fail_closed_note": "Das Eingabeschema von PreToolUse ist am 2026-09-26 an einer realen Installation aufgezeichnet: session_id, hook_event_name, cwd, tool_name, tool_input - fuer alle vier Werkzeugklassen dieses Matchers. Der Schutz-Hook sieht nur dieses Ereignis. Eine unpruefbare Eingabe blockiert deshalb.",
|
|
134
|
+
"hook_path_fields": [
|
|
135
|
+
"path",
|
|
136
|
+
"targetFile"
|
|
137
|
+
],
|
|
138
|
+
"_hook_path_fields_note": "Die Felder von tool_input, die bei diesem Client einen Pfad tragen, gemessen am 2026-09-26 (tests/protocols/2026-09-26-bau-kiro.md): read_file, fs_write, str_replace und fs_append fuehren 'path'; delete_file fuehrt 'targetFile' - aufgefallen erst im Abnahmelauf, als das Modell fuer 'rm README.md' statt der Shell das Loeschwerkzeug waehlte. Ohne das Feld haette der Hook den Pfad nur als Rohtext gegen die Muster gehalten und nicht aufgeloest (D-63). Das Ausfuehrungswerkzeug fuehrt 'command' (tokenisiert, nicht aufgeloest). grep_search fuehrt includePattern als GLOB - es wird bewusst nicht aufgeloest (ein Muster ist kein Pfad, und ein unaufloesbarer Wert blockierte fail-closed jede Suche); sein Rohtext laeuft trotzdem gegen die Secret-Muster.",
|
|
139
|
+
"skill_frontmatter": {
|
|
140
|
+
"tools_format": "list",
|
|
141
|
+
"tool_names": {},
|
|
142
|
+
"_tool_names_note": "LEER, UND DAS IST DIE AUSSAGE: Kein Verb ist abgebildet, alle fuenf stehen in tool_names_unmapped. Der Hersteller dokumentiert fuer SKILL.md die Felder name, description, license, compatibility und metadata - kein Werkzeugfeld.",
|
|
143
|
+
"tool_names_unmapped": [
|
|
144
|
+
"read",
|
|
145
|
+
"grep",
|
|
146
|
+
"glob",
|
|
147
|
+
"edit",
|
|
148
|
+
"exec"
|
|
149
|
+
],
|
|
150
|
+
"_tool_names_unmapped_note": "Gemessen am 2026-09-26 (tests/protocols/2026-09-26-bau-kiro.md, K18): Ein Skill mit den Feldern allowed-tools und triggers des Frameworks wird geladen und aufgezaehlt; die Felder bleiben wirkungslos stehen. Was einen Skill begrenzt, ist die globale Schicht - das Agentenprofil und der Schutz-Hook. Zeile S3 sagt, was das wert ist.",
|
|
151
|
+
"drop_fields": [],
|
|
152
|
+
"_drop_fields_note": "LEER, UND DAS IST DIE ENTSCHEIDUNG (Bauform wie openai-codex). Die zusagentragenden Felder permissions und triggers erreichen die installierte Fassung unveraendert; der Client nimmt sie an und wertet sie nicht aus."
|
|
153
|
+
},
|
|
154
|
+
"shared_core": [
|
|
155
|
+
{
|
|
156
|
+
"src": "framework/runtime/root-instruction.md",
|
|
157
|
+
"dst": "<ROOT_INSTRUCTION_FILE>"
|
|
158
|
+
},
|
|
159
|
+
{
|
|
160
|
+
"src": "framework/runtime/rules/00-framework-core.md",
|
|
161
|
+
"dst": "<RULES_DIR>/00-framework-core.md"
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
"src": "framework/runtime/rules/10-privacy-security.md",
|
|
165
|
+
"dst": "<RULES_DIR>/10-privacy-security.md"
|
|
166
|
+
},
|
|
167
|
+
{
|
|
168
|
+
"src": "framework/runtime/rules/15-development-rules.md",
|
|
169
|
+
"dst": "<RULES_DIR>/15-development-rules.md"
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
"src": "framework/runtime/rules/16-plan-spezifikation.md",
|
|
173
|
+
"dst": "<RULES_DIR>/16-plan-spezifikation.md"
|
|
174
|
+
},
|
|
175
|
+
{
|
|
176
|
+
"src": "framework/runtime/agents/fw-reviewer.md",
|
|
177
|
+
"dst": "<AGENTS_DIR>/fw-reviewer.md"
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
"src": "templates/rules/21-overlay-TEMPLATE.md.template",
|
|
181
|
+
"dst": "<RULES_DIR>/21-overlay-TEMPLATE.md.template"
|
|
182
|
+
},
|
|
183
|
+
{
|
|
184
|
+
"src": "templates/rules/40-tech-TEMPLATE.md.template",
|
|
185
|
+
"dst": "<RULES_DIR>/40-tech-TEMPLATE.md.template"
|
|
186
|
+
},
|
|
187
|
+
{
|
|
188
|
+
"src": "framework/runtime/hooks.json",
|
|
189
|
+
"dst": "<HOOKS_FILE>"
|
|
190
|
+
}
|
|
191
|
+
],
|
|
192
|
+
"_shared_core_note": "16-plan-spezifikation.md liefert NUR dieses Pack aus: Es ist die Regel zu Weg B (D-415) - die Spezifikationen des Clients sind der Traeger des Plans, und die Regel gibt ihnen die Vorgaben der Planvorlage und von role-re-ticket mit. Keine Beispieldatei zur nutzerlokalen Wurzel-Anweisung (kein Mechanismus) und keine zur MCP-Konfiguration.",
|
|
193
|
+
"shared_seed": [
|
|
194
|
+
{
|
|
195
|
+
"src": "framework/runtime/permissions.json",
|
|
196
|
+
"dst": "<PERMISSIONS_FILE>"
|
|
197
|
+
},
|
|
198
|
+
{
|
|
199
|
+
"src": "framework/runtime/client-settings.json",
|
|
200
|
+
"dst": ".kiro/settings/cli.json"
|
|
201
|
+
},
|
|
202
|
+
{
|
|
203
|
+
"src": "framework/runtime/rules/20-project-overlay.md",
|
|
204
|
+
"dst": "<RULES_DIR>/20-project-overlay.md"
|
|
205
|
+
},
|
|
206
|
+
{
|
|
207
|
+
"src": "templates/project-overlay",
|
|
208
|
+
"dst": ".koolie/project-overlay"
|
|
209
|
+
}
|
|
210
|
+
],
|
|
211
|
+
"rule_frontmatter": "yaml",
|
|
212
|
+
"rule_triggers": {
|
|
213
|
+
"condition_field": "fileMatchPattern",
|
|
214
|
+
"condition_format": "list",
|
|
215
|
+
"allowed_fields": [
|
|
216
|
+
"inclusion",
|
|
217
|
+
"fileMatchPattern"
|
|
218
|
+
],
|
|
219
|
+
"map": {
|
|
220
|
+
"always_on": {
|
|
221
|
+
"condition": null
|
|
222
|
+
},
|
|
223
|
+
"model_decision": {
|
|
224
|
+
"condition": null,
|
|
225
|
+
"hint": "Wird bei jedem Sitzungsstart geladen. Dieser Client kennt einen Lademodus nach Beschreibung (auto); das Pack nutzt ihn nicht, weil seine Wirkung nicht gemessen ist - gegenüber `model_decision` ist unbedingtes Laden eine Verschärfung, keine Lockerung."
|
|
226
|
+
},
|
|
227
|
+
"glob": {
|
|
228
|
+
"condition": "fileMatchPattern",
|
|
229
|
+
"from": "globs",
|
|
230
|
+
"fixed": {
|
|
231
|
+
"inclusion": "fileMatch"
|
|
232
|
+
}
|
|
233
|
+
}
|
|
234
|
+
}
|
|
235
|
+
},
|
|
236
|
+
"_rule_triggers_note": "Gemessen am 2026-09-26: Eine Datei unter .kiro/steering/ ohne Frontmatter oder mit inclusion: always steht in jeder Sitzung im Kontext (steering_inclusion), auch beim eigenen Agenten; eine Datei mit inclusion: fileMatch nicht. model_decision bildet auf unbedingtes Laden ab wie beim Pack claude-code; der Lademodus auto des Clients waere die genauere Entsprechung, ist aber ungemessen - und eine Regel, die nicht laedt, waere ein Verlust.",
|
|
237
|
+
"root_instruction_imports": [],
|
|
238
|
+
"agent_frontmatter": {
|
|
239
|
+
"tools_field": "tools",
|
|
240
|
+
"tools_format": "list",
|
|
241
|
+
"tool_names": {
|
|
242
|
+
"read": [
|
|
243
|
+
"read"
|
|
244
|
+
],
|
|
245
|
+
"grep": [
|
|
246
|
+
"read"
|
|
247
|
+
],
|
|
248
|
+
"glob": [
|
|
249
|
+
"read"
|
|
250
|
+
],
|
|
251
|
+
"edit": [
|
|
252
|
+
"write"
|
|
253
|
+
],
|
|
254
|
+
"exec": [
|
|
255
|
+
"shell"
|
|
256
|
+
]
|
|
257
|
+
},
|
|
258
|
+
"tool_names_namespace": "eigen",
|
|
259
|
+
"_tool_names_note": "Das Agentenprofil im Markdown-Format fuehrt im Feld tools KATEGORIEN, keine Werkzeugnamen (Herstellerdokumentation, Konfigurationsreferenz: read = Lesen, Verzeichnisse, Suchen; write = Schreiben, Aendern, Loeschen; shell = Ausfuehren). Das ist ein eigener Namensraum neben den Laufzeitnamen in hook_tools. Die Wirkung auf einen Unteragenten ist Gegenstand von Zeile A1."
|
|
260
|
+
},
|
|
261
|
+
"agent_start_tools": [
|
|
262
|
+
"invoke_sub_agent"
|
|
263
|
+
],
|
|
264
|
+
"_agent_start_tools_note": "Gemessen am 2026-09-26: Die Sitzung nennt invoke_sub_agent in ihrem Werkzeugbestand. Unteragenten erben laut Hersteller die Regeln der Sitzung, und das strengere Ergebnis gewinnt.",
|
|
265
|
+
"_import_control_note": "Kein Feld import_control, und das ist eine Aussage: Der Hersteller dokumentiert keinen Import fremder Werkzeugformate ausser AGENTS.md, und dieses Format ist hier die Wurzel-Anweisung selbst. Ein Schalter ist nicht erhoben.",
|
|
266
|
+
"import_channels_intro": "Der Client laedt neben dem Projekt eigene Ablagen im Benutzerprofil,",
|
|
267
|
+
"import_channels_report": [
|
|
268
|
+
{
|
|
269
|
+
"path": "~/.kiro/steering",
|
|
270
|
+
"scope": "user",
|
|
271
|
+
"when": "entries",
|
|
272
|
+
"what": "globale Steering-Dateien - laden in JEDER Sitzung neben denen des Projekts"
|
|
273
|
+
},
|
|
274
|
+
{
|
|
275
|
+
"path": "~/.kiro/skills",
|
|
276
|
+
"scope": "user",
|
|
277
|
+
"when": "entries",
|
|
278
|
+
"what": "globale Skills - stehen in jeder Sitzung zur Verfuegung"
|
|
279
|
+
},
|
|
280
|
+
{
|
|
281
|
+
"path": "~/.kiro/agents",
|
|
282
|
+
"scope": "user",
|
|
283
|
+
"when": "entries",
|
|
284
|
+
"what": "globale Agentenprofile - waehlbar mit --agent"
|
|
285
|
+
},
|
|
286
|
+
{
|
|
287
|
+
"path": "~/.kiro/settings/permissions.yaml",
|
|
288
|
+
"scope": "user",
|
|
289
|
+
"when": "exists",
|
|
290
|
+
"what": "Berechtigungen des Arbeitsplatzes - ein deny dort gilt zusaetzlich, ein allow dort erweitert NICHT ueber ein deny des Profils hinaus"
|
|
291
|
+
},
|
|
292
|
+
{
|
|
293
|
+
"path": "~/.kiro/settings/mcp.json",
|
|
294
|
+
"scope": "user",
|
|
295
|
+
"when": "exists",
|
|
296
|
+
"what": "MCP-Server des Arbeitsplatzes - stehen dem Agenten zur Verfuegung"
|
|
297
|
+
}
|
|
298
|
+
],
|
|
299
|
+
"_import_channels_report_note": "Auskunft, keine Schranke (Bauform von D-411): install.py nennt nach Installation und Hebung, welche Quellen im Benutzerprofil belegt sind. Welche Wirkung jede hat, steht in Abschnitt 7 des Packs."
|
|
300
|
+
}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Laufzeitschicht `.kiro/` – was hier liegt und wem es gehört
|
|
2
|
+
|
|
3
|
+
Diese Ablage ist die **Laufzeitform** des Frameworks für den Client `kiro`. Die kanonische, werkzeugneutrale Langform steht in `.koolie/core/framework/`; was hier liegt, ist daraus erzeugt (D-02). **Inhaltliche Änderungen gehören in den Kern und laufen als Änderungsantrag** (`.koolie/core/governance/CHANGE_REQUEST_TEMPLATE.md`).
|
|
4
|
+
|
|
5
|
+
## Was hier liegt
|
|
6
|
+
|
|
7
|
+
| Pfad | Inhalt | Wem es gehört |
|
|
8
|
+
|---|---|---|
|
|
9
|
+
| `../AGENTS.md` | Wurzel-Anweisung (Ebene 1); der Client lädt sie in jeder Sitzung | Framework |
|
|
10
|
+
| `steering/00-*.md`, `steering/10-*.md`, `steering/15-*.md` | Regeltexte des Frameworks (Ebene 3), ohne Ladebedingung – sie laden immer | Framework |
|
|
11
|
+
| `steering/16-plan-spezifikation.md` | Vorgaben für die Spezifikationen unter `specs/` – sie sind hier der Träger des Plans | Framework |
|
|
12
|
+
| `steering/20-project-overlay.md` | Laufzeitfassung des Project Overlays (Ebene 4) | Projekt |
|
|
13
|
+
| `steering/40-tech-*.md`, `steering/30-*.md` | Technology und Role Packs (Ebenen 5 und 6); eine an Dateimuster gebundene Regel trägt `inclusion: fileMatch` | Projekt |
|
|
14
|
+
| `agents/koolie.json` | **Agentenprofil mit den Berechtigungen** des Frameworks, dazu die Projektwerte | Projekt (aus dem Kern erzeugt) |
|
|
15
|
+
| `agents/fw-reviewer.md` | Nur lesender Review-Agent | Framework |
|
|
16
|
+
| `settings/cli.json` | **Wählt das Agentenprofil und die Engine** für jede Sitzung in diesem Verzeichnis | Projekt (aus dem Kern erzeugt) |
|
|
17
|
+
| `hooks/koolie.json` | Schutz-Hook und Statusmeldung | Framework |
|
|
18
|
+
| `skills/fw-*/` | Skills des Frameworks | Framework |
|
|
19
|
+
| `specs/` | Spezifikationen, die der Client anlegt (Anforderungen, Entwurf, Aufgaben) | Projekt |
|
|
20
|
+
|
|
21
|
+
## Drei Dinge, die bei diesem Client anders sind
|
|
22
|
+
|
|
23
|
+
**1. Die Berechtigungen wirken nur über den aktiven Agenten.** Die Berechtigungsdatei des Arbeitsbereichs hält dieser Client **außerhalb** des Repositoriums. Das Framework legt seine Regeln deshalb in das Agentenprofil `agents/koolie.json`, und `settings/cli.json` wählt es als Standard. Wer eine Sitzung mit einem anderen Agenten startet (`--agent`), arbeitet ohne diese Regeln. 🔴 **Fehlt das Profil oder ist es kein gültiges JSON, fällt der Client still auf seinen eingebauten Agenten zurück** – er meldet es nur als Warnung. `validate-framework.py` prüft beide Dateien gegeneinander.
|
|
24
|
+
|
|
25
|
+
**2. Die Hooks laufen nur in der interaktiven Sitzung.** Im Betrieb ohne Rückfragen (`kiro-cli chat --no-interactive`) aktiviert der Client sie nicht; dort trägt allein das Agentenprofil.
|
|
26
|
+
|
|
27
|
+
**3. `specs/` ist beschreibbar, der Rest dieser Ablage nicht.** Das Schreibverbot auf die Laufzeitschicht nimmt den Teilbaum `specs/` aus, weil dort das Planartefakt liegt. Jede Schreiboperation fragt trotzdem zurück.
|
|
28
|
+
|
|
29
|
+
## Was hier **nicht** liegt
|
|
30
|
+
|
|
31
|
+
Keine Geheimnisse, keine Zugangsdaten, keine Kunden- oder Personennamen. Die Regeln dazu stehen in `steering/10-privacy-security.md`; der Validator prüft es, und der Schutz-Hook blockiert eine Werkzeugeingabe, die ein Muster dieser Kategorien trägt.
|
|
32
|
+
|
|
33
|
+
## Prüfen
|
|
34
|
+
|
|
35
|
+
```text
|
|
36
|
+
python .koolie/core/tests/scripts/validate-framework.py --strict-overlay
|
|
37
|
+
```
|