attribute
Skill6 starsChanged 13 days agoApache-2.0View on GitHub
Establish cause-effect relationships between events or states. Use when analyzing root causes, mapping dependencies, tracing effects, or building causal models.
In this repository42 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- auditSkill
- gap-analysis-workflowSkill
- checkpointSkill
- classifySkill
- compareSkill
- constrainSkill
- critiqueSkill
- debug-workflowSkill
- decomposeSkill
- delegateSkill
- detectSkill
- digital-twin-bootstrapSkill
- digital-twin-sync-workflowSkill
- discover-capabilitiesSkill
- discoverSkill
- executeSkill
- explainSkill
- generateSkill
- groundSkill
- inquireSkill
- integrateSkill
- invokeSkill
- measureSkill
- mutateSkill
- observeSkill
- persistSkill
- perspective-validationSkill
- planSkill
- predictSkill
- recallSkill
- receiveSkill
- retrieveSkill
- rollbackSkill
- searchSkill
- sendSkill
- simulateSkill
- stateSkill
- synchronizeSkill
- transformSkill
- transitionSkill
- verifySkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
13 rules. About 0 are common, 12 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈12
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 39
Document the observed effect precisely
- Distinctive: line 44
Use provided candidates if available
- Distinctive: line 46
Consider proximate and distal causes
- Distinctive: line 49
Check temporal precedence (cause before effect)
- Distinctive: line 51
Look for correlation evidence
- Distinctive: line 52
Consider counterfactual (would effect occur without cause?)
- Distinctive: line 57
Document the causal mechanism
- Distinctive: line 60
Document why alternatives are less likely
- Distinctive: line 237
Verification tools: Read, Grep (to verify evidence)
- Distinctive: line 248
Consider multiple causes (multi-causality)
- Distinctive: line 250
Do not assume causation without mechanism
- Very specific: line 265
Never use attribute for prediction (use predict)
- Distinctive: line 266
Avoid attribution without sufficient evidence
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Intent
Establish causal relationships between observed effects and potential causes. This capability supports root cause analysis, dependency mapping, and causal reasoning for planning and debugging.
Success criteria:
- Causes identified for observed effects
- Causal strength estimated for each relationship
- Causal mechanism explained
- Alternative causes considered and ruled out
Compatible schemas:
schemas/output_schema.yaml
Inputs
| Parameter | Required | Type | Description |
effect | Yes | any | The observed effect to attribute |
candidates | No | array | Potential causes to evaluate |
context | No | object | Situational context for attribution |
Inputs not listed here are outside the capability's contract: a workflow step that binds them gets W604 (STANDARD v1.1 §5.5).
Procedure
- Characterize the effect: Understand what needs to be explained
- Document the observed effect precisely
- Note timing and circumstances
- Identify what changed
- Identify candidate causes: Generate list of potential causes
- Use provided candidates if available
- Generate additional candidates from context
- Consider proximate and distal causes
- Evaluate causal strength: Assess each candidate
- Check temporal precedence (cause before effect)
- Verify mechanism plausibility
- Look for correlation evidence
- Consider counterfactual (would effect occur without cause?)
- Trace causal chain: Map the path from cause to effect
- Identify intermediate steps
- Note amplifying or dampening factors
- Document the causal mechanism
- Rule out alternatives: Eliminate unlikely causes
- Document why alternatives are less likely
- Note any confounding factors
- Flag when multiple causes may contribute
- Quantify confidence: Assess attribution certainty
- Rate strength of causal evidence
- Note missing evidence
- Identify what would confirm/refute attribution
Output Contract
Return a structured object:
causes:
- cause: string # Identified cause
strength: number # 0.0-1.0 causal strength
mechanism: string # How cause produces effect
evidence: array[string] # Supporting evidence
type: string # direct, contributing, enabling
mechanism: string # Overall causal mechanism: how the primary cause produces the effect
strengths: # Comparative strengths
cause_1: number
cause_2: number
causal_chain:
- step: string # Intermediate step
from: string # Prior state/event
to: string # Resulting state/event
alternatives_ruled_out:
- cause: string
reason: string # Why ruled out
confidence: 0..1
evidence_anchors: ["file:line", "log:entry"]
assumptions: []Field Definitions
| Field | Type | Description |
causes | array | Identified causes with strength and mechanism |
causes[].strength | number | Causal strength (0-1) |
causes[].mechanism | string | Explanation of causal pathway |
causes[].type | string | Direct, contributing, or enabling cause |
mechanism | string | Overall causal mechanism linking the primary cause to the effect |
causal_chain | array | Steps from cause to effect |
alternatives_ruled_out | array | Rejected alternatives with reasons |
strengths | object | Causal strength per cause, for comparison |
confidence | number | 0.0-1.0 confidence in the attribution |
evidence_anchors | array | References to logs, code, or data supporting each cause |
assumptions | array | Assumptions the attribution depends on |
Examples
Example 1: Attribute Performance Degradation
Input:
effect: "API response time increased from 200ms to 2000ms"
candidates:
- "recent deployment"
- "database load increase"
- "memory leak"
context:
timing: "started 2024-01-15 14:30"
affected: "/api/users endpoint"Output:
causes:
- cause: "N+1 query introduced in recent deployment"
strength: 0.85
mechanism: "New eager loading removed; each user now triggers 3 additional queries"
evidence:
- "Deployment at 14:25, issue started 14:30"
- "Query count per request increased from 2 to 50+"
- "Database CPU correlates with API latency"
type: "direct"
- cause: "Database connection pool saturation"
strength: 0.40
mechanism: "Increased queries exhaust connection pool, causing wait times"
evidence:
- "Pool utilization at 95%"
- "Connection wait time increased"
type: "contributing"
mechanism: "The deployment removed eager loading, multiplying queries per request (2 to 50+); the database overloads and responses slow from 200ms to 2000ms"
strengths:
n_plus_1_query: 0.85
connection_pool: 0.40
memory_leak: 0.05
causal_chain:
- step: "Code deployed"
from: "eager_load(:profile)"
to: "no eager loading"
- step: "Query multiplication"
from: "2 queries/request"
to: "50+ queries/request"
- step: "Database overload"
from: "normal CPU"
to: "90% CPU"
- step: "Response delay"
from: "200ms"
to: "2000ms"
alternatives_ruled_out:
- cause: "memory leak"
reason: "Memory usage stable, no growth pattern"
- cause: "external service latency"
reason: "No external calls in affected endpoint"
confidence: 0.85
evidence_anchors:
- "git log --since='2024-01-15 14:00'"
- "app/models/user.rb:45 (diff)"
- "monitoring:query_count"
- "monitoring:db_cpu"
assumptions:
- "Monitoring data is accurate"
- "No other deployments in window"Example 2: Attribute Test Failure
Input:
effect: "UserService#create test failing with 'Email already taken'"
candidates:
- "test data pollution"
- "code change"
- "database state"Output:
causes:
- cause: "Missing database cleanup between tests"
strength: 0.90
mechanism: "Test creates user, doesn't clean up, subsequent test finds duplicate"
evidence:
- "Test passes in isolation"
- "Test fails when run after create_user_test"
- "No database_cleaner configuration"
type: "direct"
mechanism: "A user created by an earlier test is never cleaned up, so a later create of the same email fails the uniqueness validation"
strengths:
test_pollution: 0.90
code_change: 0.05
fixture_issue: 0.05
causal_chain:
- step: "First test runs"
from: "empty database"
to: "user 'test@example.com' exists"
- step: "Second test attempts create"
from: "user exists"
to: "uniqueness validation fails"
alternatives_ruled_out:
- cause: "code change"
reason: "No recent changes to UserService"
- cause: "fixture issue"
reason: "Test doesn't use fixtures"
confidence: 0.90
evidence_anchors:
- "spec/services/user_service_spec.rb:45"
- "spec/rails_helper.rb (no database_cleaner)"
- "command:rspec spec/services/user_service_spec.rb:45 --order defined"
assumptions:
- "Test failure is deterministic with this order"
- "No parallel test execution"Verification
- At least one cause identified with strength > 0.3
- Mechanism explains how cause produces effect
- Temporal precedence verified (cause before effect)
- Alternative causes considered
- Evidence supports attribution
Verification tools: Read, Grep (to verify evidence)
Safety Constraints
mutation: falserequires_checkpoint: falserequires_approval: falserisk: low
Capability-specific rules:
- Distinguish correlation from causation
- Consider multiple causes (multi-causality)
- Note when attribution is uncertain
- Do not assume causation without mechanism
Composition Patterns
Commonly follows:
detect- Detect anomalies then attribute causesobserve- Observations reveal effects to attributemeasure- Measurements quantify effects
Commonly precedes:
plan- Causal understanding informs remediationexplain- Attribution enables explanationcritique- Causal model enables critique
Anti-patterns:
- Never use attribute for prediction (use
predict) - Avoid attribution without sufficient evidence
Workflow references:
- See
reference/workflow_catalog.yaml#debug_code_changefor attribution in debugging - See
reference/workflow_catalog.yaml#world_model_buildfor causal modeling
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

