@event4u/agent-config 1.14.0 → 1.16.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/.agent-src/commands/agent-handoff.md +1 -1
- package/.agent-src/commands/bug-fix.md +3 -3
- package/.agent-src/commands/bug-investigate.md +2 -2
- package/.agent-src/commands/chat-history-checkpoint.md +3 -3
- package/.agent-src/commands/chat-history-clear.md +2 -2
- package/.agent-src/commands/chat-history-resume.md +2 -2
- package/.agent-src/commands/chat-history.md +3 -3
- package/.agent-src/commands/check-current-md.md +44 -33
- package/.agent-src/commands/commit-in-chunks.md +43 -23
- package/.agent-src/commands/compress.md +34 -2
- package/.agent-src/commands/council-design.md +96 -0
- package/.agent-src/commands/council-optimize.md +115 -0
- package/.agent-src/commands/council-pr.md +123 -0
- package/.agent-src/commands/council.md +219 -0
- package/.agent-src/commands/create-pr.md +23 -0
- package/.agent-src/commands/do-and-judge.md +3 -3
- package/.agent-src/commands/do-in-steps.md +4 -4
- package/.agent-src/commands/e2e-heal.md +1 -1
- package/.agent-src/commands/e2e-plan.md +1 -1
- package/.agent-src/commands/feature-dev.md +8 -0
- package/.agent-src/commands/feature-explore.md +6 -1
- package/.agent-src/commands/feature-plan.md +33 -2
- package/.agent-src/commands/feature-refactor.md +5 -0
- package/.agent-src/commands/feature-roadmap.md +8 -3
- package/.agent-src/commands/feature.md +58 -0
- package/.agent-src/commands/fix-ci.md +5 -0
- package/.agent-src/commands/fix-portability.md +7 -2
- package/.agent-src/commands/fix-pr-bot-comments.md +5 -0
- package/.agent-src/commands/fix-pr-comments.md +5 -0
- package/.agent-src/commands/fix-pr-developer-comments.md +5 -0
- package/.agent-src/commands/fix-references.md +5 -0
- package/.agent-src/commands/fix-seeder.md +5 -0
- package/.agent-src/commands/fix.md +60 -0
- package/.agent-src/commands/jira-ticket.md +1 -1
- package/.agent-src/commands/judge.md +1 -1
- package/.agent-src/commands/memory-add.md +3 -3
- package/.agent-src/commands/memory-full.md +2 -2
- package/.agent-src/commands/memory-promote.md +2 -2
- package/.agent-src/commands/mode.md +5 -5
- package/.agent-src/commands/onboard.md +17 -8
- package/.agent-src/commands/optimize-agents.md +6 -1
- package/.agent-src/commands/optimize-augmentignore.md +14 -0
- package/.agent-src/commands/optimize-rtk-filters.md +5 -0
- package/.agent-src/commands/optimize-skills.md +6 -1
- package/.agent-src/commands/optimize.md +54 -0
- package/.agent-src/commands/propose-memory.md +2 -2
- package/.agent-src/commands/refine-ticket.md +9 -7
- package/.agent-src/commands/review-changes.md +61 -9
- package/.agent-src/commands/review-routing.md +1 -1
- package/.agent-src/commands/roadmap-create.md +42 -4
- package/.agent-src/commands/roadmap-execute.md +9 -7
- package/.agent-src/commands/set-cost-profile.md +11 -3
- package/.agent-src/commands/sync-agent-settings.md +11 -2
- package/.agent-src/commands/tests-create.md +1 -1
- package/.agent-src/commands/tests-execute.md +2 -3
- package/.agent-src/commands/upstream-contribute.md +1 -1
- package/.agent-src/contexts/authority/commit-mechanics.md +57 -0
- package/.agent-src/contexts/authority/destructive-mechanics.md +66 -0
- package/.agent-src/contexts/authority/scope-mechanics.md +87 -0
- package/.agent-src/contexts/execution/autonomy-detection.md +54 -0
- package/.agent-src/contexts/execution/autonomy-examples.md +90 -0
- package/.agent-src/contexts/execution/autonomy-mechanics.md +29 -0
- package/.agent-src/contexts/execution/verification-mechanics.md +80 -0
- package/.agent-src/personas/README.md +1 -1
- package/.agent-src/rules/agent-authority.md +24 -0
- package/.agent-src/rules/architecture.md +1 -1
- package/.agent-src/rules/artifact-drafting-protocol.md +1 -1
- package/.agent-src/rules/artifact-engagement-recording.md +2 -2
- package/.agent-src/rules/ask-when-uncertain.md +1 -1
- package/.agent-src/rules/augment-portability.md +56 -37
- package/.agent-src/rules/autonomous-execution.md +78 -114
- package/.agent-src/rules/capture-learnings.md +1 -1
- package/.agent-src/rules/chat-history-cadence.md +109 -0
- package/.agent-src/rules/chat-history-ownership.md +123 -0
- package/.agent-src/rules/chat-history-visibility.md +96 -0
- package/.agent-src/rules/cli-output-handling.md +1 -1
- package/.agent-src/rules/{command-suggestion.md → command-suggestion-policy.md} +10 -9
- package/.agent-src/rules/commit-conventions.md +1 -1
- package/.agent-src/rules/commit-policy.md +43 -61
- package/.agent-src/rules/context-hygiene.md +3 -3
- package/.agent-src/rules/direct-answers.md +2 -2
- package/.agent-src/rules/docs-sync.md +1 -1
- package/.agent-src/rules/e2e-testing.md +1 -1
- package/.agent-src/rules/guidelines.md +4 -4
- package/.agent-src/rules/improve-before-implement.md +2 -2
- package/.agent-src/rules/language-and-tone.md +41 -96
- package/.agent-src/rules/minimal-safe-diff.md +3 -3
- package/.agent-src/rules/model-recommendation.md +4 -4
- package/.agent-src/rules/no-cheap-questions.md +89 -0
- package/.agent-src/rules/non-destructive-by-default.md +25 -59
- package/.agent-src/rules/onboarding-gate.md +5 -5
- package/.agent-src/rules/review-routing-awareness.md +9 -9
- package/.agent-src/rules/roadmap-progress-sync.md +132 -80
- package/.agent-src/rules/role-mode-adherence.md +3 -3
- package/.agent-src/rules/scope-control.md +65 -46
- package/.agent-src/rules/security-sensitive-stop.md +2 -2
- package/.agent-src/rules/size-enforcement.md +3 -2
- package/.agent-src/rules/think-before-action.md +5 -5
- package/.agent-src/rules/token-efficiency.md +4 -4
- package/.agent-src/rules/{ui-audit-before-build.md → ui-audit-gate.md} +3 -3
- package/.agent-src/rules/user-interaction.md +31 -7
- package/.agent-src/rules/verify-before-complete.md +12 -67
- package/.agent-src/scripts/update_roadmap_progress.py +65 -8
- package/.agent-src/skills/ai-council/SKILL.md +333 -0
- package/.agent-src/skills/api-endpoint/SKILL.md +2 -2
- package/.agent-src/skills/blade-ui/SKILL.md +30 -11
- package/.agent-src/skills/blast-radius-analyzer/SKILL.md +1 -1
- package/.agent-src/skills/bug-analyzer/SKILL.md +1 -1
- package/.agent-src/skills/command-routing/SKILL.md +1 -1
- package/.agent-src/skills/command-writing/SKILL.md +16 -5
- package/.agent-src/skills/conventional-commits-writing/SKILL.md +1 -1
- package/.agent-src/skills/copilot-agents-optimization/SKILL.md +2 -2
- package/.agent-src/skills/developer-like-execution/SKILL.md +2 -2
- package/.agent-src/skills/existing-ui-audit/SKILL.md +24 -9
- package/.agent-src/skills/fe-design/SKILL.md +20 -15
- package/.agent-src/skills/file-editor/SKILL.md +9 -0
- package/.agent-src/skills/flux/SKILL.md +1 -1
- package/.agent-src/skills/git-workflow/SKILL.md +1 -1
- package/.agent-src/skills/guideline-writing/SKILL.md +11 -11
- package/.agent-src/skills/learning-to-rule-or-skill/SKILL.md +4 -4
- package/.agent-src/skills/livewire/SKILL.md +27 -8
- package/.agent-src/skills/override-management/SKILL.md +2 -2
- package/.agent-src/skills/php-coder/SKILL.md +1 -1
- package/.agent-src/skills/playwright-testing/SKILL.md +2 -2
- package/.agent-src/skills/readme-reviewer/SKILL.md +1 -1
- package/.agent-src/skills/readme-writing/SKILL.md +1 -1
- package/.agent-src/skills/readme-writing-package/SKILL.md +1 -1
- package/.agent-src/skills/receiving-code-review/SKILL.md +1 -1
- package/.agent-src/skills/refine-ticket/SKILL.md +30 -24
- package/.agent-src/skills/review-routing/SKILL.md +2 -2
- package/.agent-src/skills/roadmap-management/SKILL.md +22 -16
- package/.agent-src/skills/rule-writing/SKILL.md +1 -1
- package/.agent-src/skills/skill-reviewer/SKILL.md +1 -1
- package/.agent-src/skills/skill-writing/SKILL.md +6 -6
- package/.agent-src/skills/subagent-orchestration/SKILL.md +1 -0
- package/.agent-src/skills/systematic-debugging/SKILL.md +1 -1
- package/.agent-src/skills/upstream-contribute/SKILL.md +3 -3
- package/.agent-src/skills/validate-feature-fit/SKILL.md +2 -2
- package/.agent-src/skills/{verify-before-complete → verify-completion-evidence}/SKILL.md +2 -2
- package/.agent-src/templates/agent-settings.md +9 -9
- package/.agent-src/templates/contexts/auth-model.md +1 -1
- package/.agent-src/templates/roadmaps.md +9 -8
- package/.agent-src/templates/scripts/README.md +2 -2
- package/.agent-src/templates/scripts/memory_lookup.py +1 -1
- package/.agent-src/templates/scripts/telemetry/aggregator.py +16 -1
- package/.agent-src/templates/scripts/telemetry/engagement.py +59 -0
- package/.agent-src/templates/scripts/telemetry/report_renderer.py +28 -1
- package/.agent-src/templates/scripts/telemetry_record.py +14 -1
- package/.agent-src/templates/scripts/work_engine/__init__.py +2 -2
- package/.agent-src/templates/scripts/work_engine/cli.py +64 -461
- package/.agent-src/templates/scripts/work_engine/cli_args.py +116 -0
- package/.agent-src/templates/scripts/work_engine/delivery_state.py +3 -3
- package/.agent-src/templates/scripts/work_engine/directives/backend/__init__.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/implement.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/memory.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/plan.py +1 -1
- package/.agent-src/templates/scripts/work_engine/directives/backend/report.py +1 -1
- package/.agent-src/templates/scripts/work_engine/dispatcher.py +1 -1
- package/.agent-src/templates/scripts/work_engine/emitters.py +43 -0
- package/.agent-src/templates/scripts/work_engine/errors.py +19 -0
- package/.agent-src/templates/scripts/work_engine/hook_bootstrap.py +76 -0
- package/.agent-src/templates/scripts/work_engine/input_builders.py +163 -0
- package/.agent-src/templates/scripts/work_engine/migration/v0_to_v1.py +34 -2
- package/.agent-src/templates/scripts/work_engine/persona_policy.py +1 -1
- package/.agent-src/templates/scripts/work_engine/resolvers/prompt.py +1 -1
- package/.agent-src/templates/scripts/work_engine/state_io.py +202 -0
- package/.claude-plugin/marketplace.json +10 -2
- package/AGENTS.md +16 -12
- package/CHANGELOG.md +206 -9
- package/README.md +51 -52
- package/config/agent-settings.template.yml +58 -1
- package/config/gitignore-block.txt +3 -0
- package/docs/MIGRATION.md +122 -0
- package/docs/architecture.md +83 -34
- package/docs/catalog.md +331 -0
- package/docs/contracts/STABILITY.md +134 -0
- package/docs/contracts/adr-chat-history-split.md +132 -0
- package/docs/contracts/adr-command-suggestion.md +146 -0
- package/docs/contracts/adr-implement-ticket-runtime.md +122 -0
- package/docs/contracts/adr-product-ui-track.md +384 -0
- package/docs/contracts/adr-prompt-driven-execution.md +187 -0
- package/docs/contracts/agent-memory-contract.md +149 -0
- package/docs/contracts/artifact-engagement-flow.md +262 -0
- package/docs/contracts/command-clusters.md +126 -0
- package/docs/contracts/command-suggestion-flow.md +148 -0
- package/docs/contracts/implement-ticket-flow.md +628 -0
- package/docs/contracts/linear-ai-rules-inclusion.md +143 -0
- package/docs/contracts/linear-ai-three-layers.md +131 -0
- package/docs/contracts/load-context-schema.md +186 -0
- package/docs/contracts/rule-interactions.md +107 -0
- package/docs/contracts/rule-interactions.yml +238 -0
- package/docs/contracts/rule-priority-hierarchy.md +87 -0
- package/docs/contracts/ui-stack-extension.md +236 -0
- package/docs/contracts/ui-track-flow.md +338 -0
- package/docs/customization.md +14 -0
- package/docs/end-to-end-walkthroughs.md +165 -0
- package/docs/getting-started.md +27 -9
- package/docs/github-topics.md +12 -3
- package/docs/guidelines/agent-infra/language-and-tone-examples.md +79 -0
- package/{.agent-src → docs}/guidelines/docs/readme-size-and-splitting.md +26 -25
- package/docs/guidelines/php/git.md +164 -0
- package/docs/installation.md +42 -6
- package/docs/migrations/commands-1.15.0.md +112 -0
- package/docs/showcase.md +9 -4
- package/docs/skills-catalog.md +14 -8
- package/docs/ui-track-mental-model.md +121 -0
- package/llms.txt +13 -7
- package/package.json +1 -1
- package/scripts/agent-config +23 -0
- package/scripts/ai_council/__init__.py +39 -0
- package/scripts/ai_council/_default_prices.py +41 -0
- package/scripts/ai_council/_one_off_rebalancing_audit.py +149 -0
- package/scripts/ai_council/_one_off_roundtrip.py +106 -0
- package/scripts/ai_council/budget_guard.py +172 -0
- package/scripts/ai_council/bundler.py +261 -0
- package/scripts/ai_council/clients.py +381 -0
- package/scripts/ai_council/modes.py +127 -0
- package/scripts/ai_council/orchestrator.py +350 -0
- package/scripts/ai_council/pricing.py +213 -0
- package/scripts/ai_council/project_context.py +159 -0
- package/scripts/ai_council/prompts.py +232 -0
- package/scripts/ai_council/session.py +144 -0
- package/scripts/build_linear_digest.py +4 -4
- package/scripts/check_always_budget.py +126 -0
- package/scripts/check_augmentignore.py +69 -0
- package/scripts/check_command_count_messaging.py +120 -0
- package/scripts/check_portability.py +57 -0
- package/scripts/check_public_catalog_links.py +122 -0
- package/scripts/check_public_links.py +185 -0
- package/scripts/check_references.py +5 -1
- package/scripts/check_roadmap_trackable.py +111 -0
- package/scripts/command_suggester/cooldown.py +1 -1
- package/scripts/generate_index.py +266 -0
- package/scripts/install_anthropic_key.sh +5 -0
- package/scripts/install_openai_key.sh +106 -0
- package/scripts/lint_load_context.py +163 -0
- package/scripts/lint_no_new_atomic_commands.py +179 -0
- package/scripts/lint_rule_interactions.py +149 -0
- package/scripts/memory_lookup.py +1 -1
- package/scripts/release.py +297 -64
- package/scripts/schemas/command.schema.json +20 -0
- package/scripts/schemas/rule.schema.json +10 -0
- package/scripts/skill_linter.py +26 -4
- package/scripts/sync_agent_settings.py +1 -1
- package/scripts/update_counts.py +19 -4
- package/scripts/update_prices.py +124 -0
- package/.agent-src/guidelines/php/git.md +0 -96
- package/.agent-src/rules/chat-history.md +0 -200
- /package/.agent-src/rules/{slash-commands.md → slash-command-routing-policy.md} +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/agent-interaction-and-decision-quality.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/break-glass-usage.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/developer-judgment.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/engineering-memory-data-format.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/layered-settings.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/memory-access.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/naming.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/output-patterns.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/review-routing-data-format.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/role-contracts.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/role-mode-router.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/runtime-layer.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/self-improvement-pipeline.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/size-and-scope.md +0 -0
- /package/{.agent-src → docs}/guidelines/agent-infra/tool-integration.md +0 -0
- /package/{.agent-src → docs}/guidelines/e2e/playwright.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/api-design.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/artisan-commands.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/blade-ui.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/controllers.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/database.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/eloquent.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/flux.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/general.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/jobs.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/livewire.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/logging.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/naming.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/dependency-injection.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/dtos.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/events.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/factory.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/pipelines.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/policies.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/repositories.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/service-layer.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns/strategy.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/patterns.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/performance.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/resources.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/security.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/sql.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/validations.md +0 -0
- /package/{.agent-src → docs}/guidelines/php/websocket.md +0 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
# Autonomy Examples — Anchors, Trivial Cases, Failure Modes
|
|
2
|
+
|
|
3
|
+
Loaded by the [`autonomous-execution`](../../rules/autonomous-execution.md)
|
|
4
|
+
rule when concrete examples sharpen a decision. The detection algorithm
|
|
5
|
+
lives in [`autonomy-detection.md`](autonomy-detection.md); the setting
|
|
6
|
+
semantics live in [`autonomy-mechanics.md`](autonomy-mechanics.md).
|
|
7
|
+
|
|
8
|
+
## Opt-in anchors — flip `auto` → `on`
|
|
9
|
+
|
|
10
|
+
Multilingual phrases that, when spoken **as a meta-instruction to the
|
|
11
|
+
agent** (per the speech-act check in [`autonomy-detection.md`](autonomy-detection.md)),
|
|
12
|
+
flip standing autonomy on:
|
|
13
|
+
|
|
14
|
+
- DE: "arbeite selbstständig" · "frag nicht jedes Mal" · "tue es einfach"
|
|
15
|
+
- EN: "work autonomously" · "don't ask" · "just do it"
|
|
16
|
+
|
|
17
|
+
Illustrative, not exhaustive — recognition is intent-based, not
|
|
18
|
+
substring-based.
|
|
19
|
+
|
|
20
|
+
## Opt-out anchors — flip back to `off`
|
|
21
|
+
|
|
22
|
+
Reverse-trigger phrases (same speech-act check applies):
|
|
23
|
+
|
|
24
|
+
- DE: "frag mich wieder" · "frag mich erst" · "stop autonomous mode"
|
|
25
|
+
- EN: "ask me first" · "ask me again" · "stop being autonomous"
|
|
26
|
+
|
|
27
|
+
## Speech-act check — patterns that DO NOT flip
|
|
28
|
+
|
|
29
|
+
The same words can appear in many forms. None of these flip standing
|
|
30
|
+
autonomy:
|
|
31
|
+
|
|
32
|
+
- **Content / copy** — "Put the slogan 'just do it' on the landing page."
|
|
33
|
+
- **Quote / reference** — "Nike's tagline is 'just do it' — write a blog post about it."
|
|
34
|
+
- **Subject of a request** — "Write docs about the 'work autonomously' modes."
|
|
35
|
+
- **Code / data** — string literals, test fixtures, translations, JSON.
|
|
36
|
+
- **About a third party** — "My colleague works autonomously."
|
|
37
|
+
- **A question or hypothetical** — "Should I set `don't ask` as the default?"
|
|
38
|
+
|
|
39
|
+
Counter-examples — meta-questions, self-descriptions, or one-shot
|
|
40
|
+
delegations also do **not** flip:
|
|
41
|
+
|
|
42
|
+
- "Why don't you ask that yourself?"
|
|
43
|
+
- "I'm working autonomously right now."
|
|
44
|
+
- "Can you decide that yourself?"
|
|
45
|
+
|
|
46
|
+
## Trivial — JUST ACT (in `on` or `auto`-after-opt-in)
|
|
47
|
+
|
|
48
|
+
Eight worked cases. In `personal.autonomy: off`, ask these. In `on`
|
|
49
|
+
or `auto`-after-opt-in, act on them.
|
|
50
|
+
|
|
51
|
+
- "Should I start with Step 2 or Step 3?" — pick the obvious next step
|
|
52
|
+
on the roadmap and proceed; if blocked, name the blocker, otherwise go.
|
|
53
|
+
- "Should we commit now or after the next change?" — answered by the
|
|
54
|
+
commit-default in [`commit-policy`](../../rules/commit-policy.md), no need to ask.
|
|
55
|
+
- "How should I split the commits?" — never asked; either you are
|
|
56
|
+
invoked via `/commit-in-chunks` (split and commit) or you are not
|
|
57
|
+
(don't commit at all).
|
|
58
|
+
- "Should I run the linter / tests now or after the change?" — run
|
|
59
|
+
what [`verify-before-complete`](../../rules/verify-before-complete.md)
|
|
60
|
+
requires; don't ask.
|
|
61
|
+
- "I found 3 follow-up issues — fix all or stop?" — if they are within
|
|
62
|
+
the stated task scope and minimal-safe-diff allows, fix them; if they
|
|
63
|
+
expand scope, stop and surface them as a list.
|
|
64
|
+
- "Filename should be `X.md` or `Y.md`?" when one matches the
|
|
65
|
+
surrounding convention — pick the convention-matching one.
|
|
66
|
+
- "Do you want a verification table or paragraph?" — pick whichever
|
|
67
|
+
fits the conversation style; format is not a decision worth a turn.
|
|
68
|
+
- "Show me a diff before regenerating output from a tracked source?"
|
|
69
|
+
— compression, code-gen, formatter passes, lock-file rebuilds — run
|
|
70
|
+
it and report the result. Reversibility comes from the source, not
|
|
71
|
+
from per-file confirmation. See [`non-destructive-by-default`](../../rules/non-destructive-by-default.md#not-in-scope--deterministic-regeneration)
|
|
72
|
+
§ Not in scope.
|
|
73
|
+
|
|
74
|
+
## Failure modes — autonomy side
|
|
75
|
+
|
|
76
|
+
Wrong-behavior patterns this rule prevents:
|
|
77
|
+
|
|
78
|
+
- Asking "Step 2 or Step 3?" when the roadmap orders them.
|
|
79
|
+
- "Should I run the CI checks?" — `verify-before-complete` decides; act.
|
|
80
|
+
- "Do we want to commit this?" — no, by default. Don't ask.
|
|
81
|
+
- Numbered-options block whose only choice differences are sequencing
|
|
82
|
+
("do A then B" vs "do B then A") with no real trade-off.
|
|
83
|
+
- Asking after the user already issued a standing autonomy directive
|
|
84
|
+
earlier in the conversation (cache the opt-in for `auto`).
|
|
85
|
+
|
|
86
|
+
For Hard-Floor failure modes (treating autonomy as cover for a
|
|
87
|
+
floor-crossing action, reading a roadmap step as deploy authorization,
|
|
88
|
+
refusing task-aligned WIP deletions, committing bulk-deletion / infra
|
|
89
|
+
diffs without surfacing them) see
|
|
90
|
+
[`non-destructive-by-default`](../../rules/non-destructive-by-default.md#failure-modes).
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Autonomy Mechanics — Settings and Platform Behavior
|
|
2
|
+
|
|
3
|
+
Loaded by the [`autonomous-execution`](../../rules/autonomous-execution.md)
|
|
4
|
+
rule when settings semantics or platform-specific defaults are
|
|
5
|
+
relevant. Detection logic lives in [`autonomy-detection.md`](autonomy-detection.md).
|
|
6
|
+
|
|
7
|
+
## `personal.autonomy` setting
|
|
8
|
+
|
|
9
|
+
| Value | Behavior |
|
|
10
|
+
|---|---|
|
|
11
|
+
| `on` | Suppress trivial questions. Act on the obvious next step. Still ask on blocking / critical decisions, and ALWAYS ask on Hard-Floor triggers. |
|
|
12
|
+
| `off` | Ask trivial questions too. Use this if you want the agent to check in on each workflow step. |
|
|
13
|
+
| `auto` (default) | Same as `off` by default. Flips to `on` for the rest of the conversation as soon as the user expresses the intent "stop asking, just work". See [detection logic](autonomy-detection.md) — match by **intent**, not exact string. The flip never lifts the Hard Floor. |
|
|
14
|
+
|
|
15
|
+
The value is read once on the first turn (per
|
|
16
|
+
[`layered-settings`](../../../docs/guidelines/agent-infra/layered-settings.md#section-aware-merge-rules))
|
|
17
|
+
and cached. Missing key → treat as `on`.
|
|
18
|
+
|
|
19
|
+
## Cloud platforms — settings degrade to `on`
|
|
20
|
+
|
|
21
|
+
Setting reads degrade gracefully on cloud platforms (no
|
|
22
|
+
`.agent-settings.yml` available). Treat as `personal.autonomy: on` —
|
|
23
|
+
the user had to deliberately ship a custom skill bundle to a cloud
|
|
24
|
+
agent and is unlikely to want trivial-question friction.
|
|
25
|
+
|
|
26
|
+
The Hard Floor still applies on every surface, including cloud. There
|
|
27
|
+
is no "cloud override" for production-branch merges, deploys, pushes,
|
|
28
|
+
prod data/infra, or whimsical bulk deletions — see
|
|
29
|
+
[`non-destructive-by-default`](../../rules/non-destructive-by-default.md#cloud-behavior).
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
# Verification Mechanics
|
|
2
|
+
|
|
3
|
+
Loaded by [`verify-before-complete`](../../rules/verify-before-complete.md).
|
|
4
|
+
Holds the decision logic and lookup tables behind the Iron Law: when
|
|
5
|
+
to run which verification command, the per-task-type evidence table,
|
|
6
|
+
confidence gating, and the break-glass reduction during live
|
|
7
|
+
incidents.
|
|
8
|
+
|
|
9
|
+
**Size budget:** ≤ 4,000 chars. Tracked under Phase 6 of
|
|
10
|
+
`road-to-pr-34-followups`.
|
|
11
|
+
|
|
12
|
+
## When to run what — timing matters
|
|
13
|
+
|
|
14
|
+
**Quality tools (PHPStan, Rector, ECS) run ONCE at the very end** — not after every edit.
|
|
15
|
+
Do NOT run quality checks between tasks if you have more work to do.
|
|
16
|
+
Only run the full quality pipeline when you are about to finish all work in the current conversation.
|
|
17
|
+
|
|
18
|
+
**Tests: as targeted as possible, as little as necessary.**
|
|
19
|
+
|
|
20
|
+
- During work: run ONLY the specific test class or test case affected by the change.
|
|
21
|
+
Use `--filter=ClassName` or `--filter=test_name` — NEVER the full suite mid-work.
|
|
22
|
+
- Only run tests when you genuinely need to verify behavior (not "just to be safe").
|
|
23
|
+
- Full test suite: ONCE at the very end, before quality tools.
|
|
24
|
+
|
|
25
|
+
**The sequence at the end:**
|
|
26
|
+
|
|
27
|
+
1. All code changes are done
|
|
28
|
+
2. Run tests — targeted first (`--filter`), full suite only if targeted passes
|
|
29
|
+
3. Run quality pipeline (PHPStan → Rector → ECS → PHPStan)
|
|
30
|
+
4. Fix any issues from step 2-3
|
|
31
|
+
5. ONLY THEN claim completion or suggest commit/push/PR
|
|
32
|
+
|
|
33
|
+
## Minimum verification per task type
|
|
34
|
+
|
|
35
|
+
| Task | Required evidence |
|
|
36
|
+
|---|---|
|
|
37
|
+
| Code change | Tests + PHPStan |
|
|
38
|
+
| New feature | Tests + PHPStan + smoke test |
|
|
39
|
+
| Bug fix | Regression test + full suite |
|
|
40
|
+
| Refactoring | Full suite + PHPStan + Rector |
|
|
41
|
+
| Config/migration | Relevant tests or command output |
|
|
42
|
+
| API endpoint | curl/HTTP response output |
|
|
43
|
+
| Documentation only | No verification needed |
|
|
44
|
+
|
|
45
|
+
**Never accept** as proof: "should work", "looks correct", "logic is sound".
|
|
46
|
+
No captured output = not verified.
|
|
47
|
+
|
|
48
|
+
## Confidence gating
|
|
49
|
+
|
|
50
|
+
State confidence explicitly before claiming completion on non-trivial work.
|
|
51
|
+
|
|
52
|
+
- **High** — runtime path read end-to-end, relevant tests inspected or run,
|
|
53
|
+
no hidden side-effects (queues/events/observers) unaccounted for.
|
|
54
|
+
- **Medium** — main path verified but one gap remains; list the gap in the
|
|
55
|
+
completion message.
|
|
56
|
+
- **Low** — broad implementation NOT allowed; switch to analysis, narrow
|
|
57
|
+
the scope, or ask the user before proceeding.
|
|
58
|
+
|
|
59
|
+
For high-risk areas (auth, tenancy, migrations, queues, dependencies,
|
|
60
|
+
external APIs, data exposure), "high" requires tests AND a cross-layer
|
|
61
|
+
read — not inference from a single file.
|
|
62
|
+
|
|
63
|
+
## Break-glass reduction
|
|
64
|
+
|
|
65
|
+
During a live production incident the verification gate is **narrowed**,
|
|
66
|
+
never skipped. Break-glass requires explicit user invocation (e.g.
|
|
67
|
+
`break-glass: true`, "this is a hotfix"). Never enter it unilaterally.
|
|
68
|
+
|
|
69
|
+
Minimum evidence:
|
|
70
|
+
|
|
71
|
+
- **Targeted test(s)** covering the exact regression — zero tests is not
|
|
72
|
+
acceptable.
|
|
73
|
+
- **Smoke check** of the fixed path (curl, manual trigger, log tail) with
|
|
74
|
+
output captured in the message.
|
|
75
|
+
- **Explicit list of skipped validations** and a **follow-up commitment**
|
|
76
|
+
(ticket or PR line) to run them within 24h.
|
|
77
|
+
|
|
78
|
+
Completion wording: _"hotfix applied, full verification deferred per
|
|
79
|
+
break-glass"_ — never _"done"_ or _"verified"_. The normal gate resumes
|
|
80
|
+
on the follow-up PR.
|
|
@@ -99,5 +99,5 @@ cast (usually Core-6 for review skills, empty for others).
|
|
|
99
99
|
|
|
100
100
|
## Related
|
|
101
101
|
|
|
102
|
-
- [
|
|
102
|
+
- [`../../docs/guidelines/agent-infra/role-contracts.md`](../../docs/guidelines/agent-infra/role-contracts.md) — workflow modes personas compose with
|
|
103
103
|
- [`../rules/artifact-drafting-protocol.md`](../rules/artifact-drafting-protocol.md) — mandatory per new persona
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
---
|
|
2
|
+
type: "always"
|
|
3
|
+
description: "Priority Index for the four authority rules — Hard Floor → Permission Gate → Commit Default → Trivial-vs-Blocking; read first, route to canonical rule"
|
|
4
|
+
alwaysApply: true
|
|
5
|
+
source: package
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Agent Authority — Priority Index
|
|
9
|
+
|
|
10
|
+
Four rules answer **"may the agent do this autonomously?"** Check bands in order; higher band wins.
|
|
11
|
+
|
|
12
|
+
| Band | Trigger | Canonical rule |
|
|
13
|
+
|---|---|---|
|
|
14
|
+
| **1. Hard Floor** | Prod-trunk merge · deploy · push · prod data/infra · whimsical bulk deletion · bulk-deletion or infra commit | [`non-destructive-by-default`](non-destructive-by-default.md) |
|
|
15
|
+
| **2. Permission Gate** | Git op · branch / PR / tag · architectural or library change · scope expansion | [`scope-control`](scope-control.md) |
|
|
16
|
+
| **3. Commit Default** | About to commit — never, unless one of four exceptions fires | [`commit-policy`](commit-policy.md) |
|
|
17
|
+
| **4. Trivial-vs-Blocking** | Routine workflow question — act or ask | [`autonomous-execution`](autonomous-execution.md) |
|
|
18
|
+
|
|
19
|
+
## Index rules
|
|
20
|
+
|
|
21
|
+
- **Hard Floor wins, always.** No autonomy setting, roadmap step, or standing instruction lifts it.
|
|
22
|
+
- **Higher band wins on conflict.** Commit exception ≠ Hard Floor override; scope permission ≠ commit override.
|
|
23
|
+
- **Index never restates an Iron Law.** Iron Laws live verbatim in canonical files; this router only points.
|
|
24
|
+
- **Unsure → ask.** [`ask-when-uncertain`](ask-when-uncertain.md) is the universal escape hatch.
|
|
@@ -10,7 +10,7 @@ source: package
|
|
|
10
10
|
## General Principles
|
|
11
11
|
|
|
12
12
|
- **Controllers are thin** — no business logic, delegate to services.
|
|
13
|
-
- **Only Single Action Controllers** — every new controller MUST use `__invoke()`. No multi-action / resource controllers. See
|
|
13
|
+
- **Only Single Action Controllers** — every new controller MUST use `__invoke()`. No multi-action / resource controllers. See `../../docs/guidelines/php/controllers.md` for naming conventions.
|
|
14
14
|
- **Every controller needs a FormRequest** — never validate inline with `$request->validate()`. Use a dedicated `FormRequest` subclass.
|
|
15
15
|
- **Services contain business logic** — calculations, orchestration, validation.
|
|
16
16
|
- **Models have no business logic** — only relationships, scopes, accessors/mutators.
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
alwaysApply: false
|
|
4
|
-
description: "
|
|
4
|
+
description: "Creating a new skill, rule, command, or guideline, or significantly rewriting one — runs a mandatory Understand → Research → Draft sequence before any artifact content is written."
|
|
5
5
|
source: package
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
type: "auto"
|
|
3
3
|
alwaysApply: false
|
|
4
|
-
description: "After
|
|
4
|
+
description: "After a /implement-ticket or /work phase-step (refine/memory/analyze/plan/implement/test/verify/report) or full task — emit one telemetry:record call with consulted+applied ids when enabled"
|
|
5
5
|
source: package
|
|
6
6
|
---
|
|
7
7
|
|
|
@@ -127,7 +127,7 @@ log — that is a real bug, not a swallowed error.
|
|
|
127
127
|
## See also
|
|
128
128
|
|
|
129
129
|
- [`road-to-artifact-engagement-telemetry`](../../../agents/roadmaps/road-to-artifact-engagement-telemetry.md) — phase contract
|
|
130
|
-
- [`
|
|
130
|
+
- [`docs/contracts/artifact-engagement-flow.md`](../../docs/contracts/artifact-engagement-flow.md) — recording contract details
|
|
131
131
|
- [`/implement-ticket`](../commands/implement-ticket.md) and [`/work`](../commands/work.md) — boundary points where this rule fires
|
|
132
132
|
- [`scripts/telemetry/`](../../../scripts/telemetry/) — engine source
|
|
133
133
|
- [`agent-settings`](../templates/agent-settings.md) — `telemetry.artifact_engagement.*` reference
|
|
@@ -94,7 +94,7 @@ are related".
|
|
|
94
94
|
- **Session handoff** (`/agent-handoff`, fresh-chat proposal): ask LAST,
|
|
95
95
|
after all domain / clarifying questions — so the user's answers can be
|
|
96
96
|
folded into the handoff prompt. Full rationale in
|
|
97
|
-
[`agent-interaction-and-decision-quality`](
|
|
97
|
+
[`agent-interaction-and-decision-quality`](../../docs/guidelines/agent-infra/agent-interaction-and-decision-quality.md#handoff--model-switch-questions).
|
|
98
98
|
- **Model switch**: different phase — [`model-recommendation`](model-recommendation.md)
|
|
99
99
|
triggers at task start with its own STOP-AND-WAIT gate, standalone, not
|
|
100
100
|
appended to a Q&A block. Do not conflate the two.
|
|
@@ -6,38 +6,47 @@ source: package
|
|
|
6
6
|
|
|
7
7
|
# Package Portability
|
|
8
8
|
|
|
9
|
-
Everything
|
|
9
|
+
Everything that ships with the `event4u/agent-config` package MUST be
|
|
10
|
+
**project-agnostic**. That includes:
|
|
10
11
|
|
|
11
|
-
- `.augment/` (skills, rules, commands, guidelines,
|
|
12
|
-
|
|
13
|
-
-
|
|
12
|
+
- Everything inside `.augment/` (skills, rules, commands, guidelines,
|
|
13
|
+
templates, contexts)
|
|
14
|
+
- The package repo's own root `AGENTS.md`
|
|
15
|
+
- The package repo's own `.github/copilot-instructions.md`
|
|
14
16
|
|
|
15
17
|
All three are either installed into consumer projects (`.augment/` via
|
|
16
|
-
`install.sh`) or read by AI tools working on the package itself
|
|
17
|
-
consumer-specific
|
|
18
|
+
`install.sh`) or read by AI tools when working on the package itself
|
|
19
|
+
(`AGENTS.md`, `copilot-instructions.md`). Leaking consumer-specific
|
|
20
|
+
content into any of them pollutes downstream projects or misleads agents.
|
|
18
21
|
|
|
19
22
|
## Rules
|
|
20
23
|
|
|
21
|
-
- NEVER reference a specific consumer project, repo, domain, or tech
|
|
22
|
-
stack. The package repo itself (`event4u/agent-config`) MAY
|
|
23
|
-
|
|
24
|
-
the package, not a leak.
|
|
24
|
+
- NEVER reference a specific consumer project, repo name, domain, or tech
|
|
25
|
+
stack directly. The package repo itself (`event4u/agent-config`) MAY be
|
|
26
|
+
named inside its own root `AGENTS.md` and `copilot-instructions.md` —
|
|
27
|
+
that is meta about the package, not a leak.
|
|
25
28
|
- NEVER hardcode consumer-project paths, class names, or conventions.
|
|
26
|
-
- Write content so it works as a reusable package across any project.
|
|
27
|
-
- Project-specific behavior belongs in the **consumer's**
|
|
28
|
-
|
|
29
|
-
- If a skill
|
|
30
|
-
`.agent-settings.yml` or accept as parameter.
|
|
31
|
-
-
|
|
32
|
-
in a completely different project?"
|
|
29
|
+
- Write content so it works as a **reusable package** across any project.
|
|
30
|
+
- Project-specific behavior belongs in the **consumer's** `.agent-settings.yml`,
|
|
31
|
+
`AGENTS.md`, or `agents/` — never in files shipped by this package.
|
|
32
|
+
- If a skill or rule needs project-specific input, read it from
|
|
33
|
+
`.agent-settings.yml` or accept it as a parameter.
|
|
34
|
+
- When reviewing or editing package files, always ask: "Would this still
|
|
35
|
+
make sense in a completely different project?"
|
|
33
36
|
|
|
34
37
|
## Runtime invocations — no `task` commands
|
|
35
38
|
|
|
36
|
-
Skills, rules, commands, guidelines, personas,
|
|
37
|
-
package run in **consumer projects
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
39
|
+
Skills, rules, commands, guidelines, personas, and context docs
|
|
40
|
+
shipped by this package run in **consumer projects**. Consumer
|
|
41
|
+
projects may not have [Task](https://taskfile.dev) installed —
|
|
42
|
+
they might use npm scripts, Composer scripts, Make, or nothing at
|
|
43
|
+
all. A skill that instructs an agent to run `task <something>`
|
|
44
|
+
silently breaks in every project without a `Taskfile.yml`.
|
|
45
|
+
|
|
46
|
+
**Rule:** Never reference a `task <something>` invocation inside any
|
|
47
|
+
artefact file under `.agent-src.uncompressed/{skills,rules,commands,guidelines,personas,contexts}/`
|
|
48
|
+
(and therefore also not in the compressed mirror under `.agent-src/`).
|
|
49
|
+
Use the direct script invocation instead:
|
|
41
50
|
|
|
42
51
|
| ❌ Forbidden | ✅ Portable |
|
|
43
52
|
|---|---|
|
|
@@ -54,19 +63,29 @@ under `.agent-src.uncompressed/{skills,rules,commands,guidelines,personas,contex
|
|
|
54
63
|
| `task validate-schema` | `python3 scripts/validate_frontmatter.py` |
|
|
55
64
|
| `task counts-check` | `python3 scripts/update_counts.py --check` |
|
|
56
65
|
| `task roadmap-progress` | `./agent-config roadmap:progress` |
|
|
57
|
-
| `task ci` | run each underlying script directly |
|
|
66
|
+
| `task ci` | run each underlying script directly (no single portable equivalent) |
|
|
67
|
+
|
|
68
|
+
Task remains a convenience shortcut for maintainers working on the
|
|
69
|
+
package repo itself — `task ci` is the recommended local gate before
|
|
70
|
+
a PR and lives in `Taskfile.yml`, `AGENTS.md`, and the package README.
|
|
71
|
+
Those maintainer-facing surfaces are outside the scope of this rule.
|
|
72
|
+
Artefact files must assume Task is absent.
|
|
58
73
|
|
|
59
|
-
|
|
60
|
-
|
|
74
|
+
The detection pattern *"if the consumer has a `Makefile` / build
|
|
75
|
+
script, prefer its targets over raw commands"* is still allowed when
|
|
76
|
+
the skill adapts to the **consumer's own** tooling (e.g.
|
|
77
|
+
`tests-execute` detecting `php artisan test` vs `vendor/bin/pest`).
|
|
78
|
+
It is not allowed to reference `task <name>` as the detected target —
|
|
79
|
+
every direct invocation must resolve to a real script path.
|
|
61
80
|
|
|
62
81
|
## Consumer CLI — `./agent-config`
|
|
63
82
|
|
|
64
|
-
A subset of scripts is exposed through a project-local CLI
|
|
65
|
-
`./agent-config` (written into the project root by the
|
|
66
|
-
gitignored). Artefacts MUST prefer the CLI over raw
|
|
67
|
-
paths for every command
|
|
68
|
-
|
|
69
|
-
`node_modules/` or `vendor/`.
|
|
83
|
+
A subset of package scripts is exposed through a project-local CLI
|
|
84
|
+
wrapper `./agent-config` (written into the project root by the
|
|
85
|
+
installer, gitignored). Artefacts MUST prefer the CLI over raw
|
|
86
|
+
`python3 scripts/…` paths for every command the CLI already covers,
|
|
87
|
+
because the raw paths only resolve inside the package repo — in a
|
|
88
|
+
consumer project the scripts live under `node_modules/` or `vendor/`.
|
|
70
89
|
|
|
71
90
|
| ❌ Forbidden in artefacts | ✅ Portable |
|
|
72
91
|
|---|---|
|
|
@@ -85,13 +104,13 @@ package repo, in consumer projects the scripts live under
|
|
|
85
104
|
| `python3 scripts/refine_ticket_detect.py` | `./agent-config refine-ticket:detect` |
|
|
86
105
|
|
|
87
106
|
Commands not covered by the CLI stay as direct script invocations
|
|
88
|
-
(e.g. `bash scripts/compress.sh --sync`) — maintainer-only
|
|
89
|
-
reachable from a consumer project anyway.
|
|
107
|
+
(e.g. `bash scripts/compress.sh --sync`) — those are maintainer-only
|
|
108
|
+
and not reachable from a consumer project anyway.
|
|
90
109
|
|
|
91
110
|
## Enforcement
|
|
92
111
|
|
|
93
112
|
`scripts/check_portability.py` scans `.augment/`, `.agent-src.uncompressed/`,
|
|
94
|
-
and the package root `AGENTS.md` + `.github/copilot-instructions.md`
|
|
95
|
-
forbidden identifiers, for any `task <name>` invocation
|
|
96
|
-
script invocations that bypass the
|
|
97
|
-
must pass before any PR.
|
|
113
|
+
and the package repo's root `AGENTS.md` + `.github/copilot-instructions.md`
|
|
114
|
+
for forbidden identifiers, for any `task <name>` invocation inside
|
|
115
|
+
artefact files, and for direct script invocations that bypass the
|
|
116
|
+
`./agent-config` CLI. It runs in CI and must pass before any PR.
|