persist
Skill6 starsChanged 14 days agoApache-2.0View on GitHub
Write stable learnings, decisions, and patterns to durable storage like CLAUDE.md or knowledge files. Use when saving project decisions, recording patterns, or updating long-term memory.
- Reads credentials
2 other projects use a version of this.
Adopted by
Most recently taken up by
- broomva/skillstheir own version, first seen Jun 13, 2026
- kimgoetzke/coding-agent-configstheir own version, first seen Apr 30, 2026
Other versions2 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 2
- broomva/skills★ 4same name
- kimgoetzke/coding-agent-configs★ 2same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository42 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- attributeSkill
- 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
- 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
17 rules. About 0 are common, 17 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈17
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 67
Write is verified successfully
- Distinctive: line 84
Validate content: Ensure content is appropriate for persistence
- Distinctive: line 85
Check content is non-empty and meaningful
- Distinctive: line 86
Verify content type classification
- Distinctive: line 87
Ensure no sensitive data (credentials, PII) is being persisted
- Distinctive: line 106
Add timestamp and source metadata
- Distinctive: line 116
Use Edit tool for file modifications
- Distinctive: line 118
Add section headers if needed
- Distinctive: line 352
Verification tools: Read (to verify write), Edit (to perform write)
- Distinctive: line 362
NEVER persist credentials, API keys, or secrets
- Distinctive: line 363
NEVER persist PII without explicit user consent
- Distinctive: line 366
Create backup before replacing existing content
- Distinctive: line 367
Stop if destination is a system or configuration file
- Distinctive: line 383
Never persist without checking for duplicates
- Distinctive: line 384
Never persist contradictory information without flagging
- Distinctive: line 385
Never persist to files outside project scope without approval
- Distinctive: line 386
Avoid persisting ephemeral/temporary information
≈ “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
Execute persist to write stable learnings, decisions, and patterns to durable storage for future recall and consistency.
Success criteria:
- Content is written to the correct destination
- Existing content is preserved or properly merged
- New content follows established structure/format
- Metadata (timestamp, source) is recorded
- Write is verified successfully
Compatible schemas:
schemas/output_schema.yaml
Inputs
| Parameter | Required | Type | Description |
data | Yes | any | Data to store |
key | No | string | Storage key |
ttl | No | string | Time to live |
Inputs not listed here are outside the capability's contract: a workflow step that binds them gets W604 (STANDARD v1.1 §5.5).
Procedure
- Validate content: Ensure content is appropriate for persistence
- Check content is non-empty and meaningful
- Verify content type classification
- Ensure no sensitive data (credentials, PII) is being persisted
- Validate content structure if object
- Determine destination: Select where to write (from
key, if given)CLAUDE.md: Project-level decisions and patterns- Specific file: Domain or feature-specific knowledge
auto: Choose based on content type and scope
- Read existing content: Load current state of destination
- Parse structure and sections
- Identify target section for new content
- Note existing entries to avoid duplicates
- Check for duplicates/conflicts: Compare new vs existing
- Exact duplicate: Skip or update timestamp only
- Similar content: Flag for review
- Contradiction: Stop and request clarification
- Format new content: Structure for persistence
- Add timestamp and source metadata
- Format according to destination conventions
- Include rationale if decision/pattern
- Apply merge strategy:
append: Add to end of sectionreplace: Overwrite matching existing entrymerge: Intelligently combine with existing
- Write to destination: Execute the write operation
- Use Edit tool for file modifications
- Preserve file formatting and structure
- Add section headers if needed
- Verify write: Confirm content was persisted correctly
- Re-read destination file
- Confirm new content present
- Validate structure integrity
Output Contract
Return a structured object:
stored: boolean # true when the data is in the store after this step (written, merged, or already present)
key: string # Storage key (destination and section, e.g. "CLAUDE.md#Patterns")
timestamp: string # ISO 8601 date-time of persistence
persisted:
content_type: decision | pattern | fact | context
content_id: string # Unique identifier for this persisted item
destination: string # File path where content was written
section: string | null # Section within file
write_operation:
strategy: append | replace | merge
bytes_written: integer
lines_added: integer
lines_modified: integer
verification:
write_confirmed: boolean
content_present: boolean
structure_valid: boolean
metadata:
source: string # Where this knowledge came from
related_entries: array[string] # IDs of related persisted items
expiry: string | null # When this knowledge should be reviewed
duplicates_found:
- existing_id: string
similarity: number
action_taken: skipped | updated | merged
confidence: number # 0.0-1.0 based on write verification
evidence_anchors: array[string] # References to verification
assumptions: array[string] # Explicit assumptionsField Definitions
| Field | Type | Description |
stored | boolean | Whether the data is in the store after this step (written, merged, or already present as a duplicate) |
key | string | Storage key the data lives under (destination and section) |
timestamp | string | ISO 8601 date-time of persistence |
persisted.content_id | string | Unique ID for retrieval with recall |
persisted.destination | string | File path of storage location |
write_operation | object | Details of the write performed |
verification.write_confirmed | boolean | Whether write was verified |
duplicates_found | array | Any duplicate/similar entries detected |
confidence | number | 1.0 if verified; lower if issues |
evidence_anchors | array | References to the written location and its verification |
assumptions | array | Explicit assumptions |
Examples
Example 1: Persisting a Project Decision
Input:
data:
content_type: decision
decision: "Use PostgreSQL for all persistent storage"
rationale: "Strong ACID guarantees, mature ecosystem, team familiarity"
context: "Evaluated PostgreSQL, MySQL, and MongoDB for new backend service"
constraints:
- "Must support complex queries"
- "Team has PostgreSQL experience"
key: "CLAUDE.md#Architecture Decisions"Output:
stored: true
key: "CLAUDE.md#Architecture Decisions"
timestamp: "2024-01-16T10:00:00Z"
persisted:
content_type: decision
content_id: "decision_db_20240116"
destination: "CLAUDE.md"
section: "Architecture Decisions"
write_operation:
strategy: append
bytes_written: 256
lines_added: 8
lines_modified: 0
verification:
write_confirmed: true
content_present: true
structure_valid: true
metadata:
source: "conversation:conv_abc123"
related_entries: []
expiry: null
duplicates_found: []
confidence: 1.0
evidence_anchors:
- "CLAUDE.md:45-52"
- "verification:re-read:success"
assumptions:
- "CLAUDE.md is the correct location for architecture decisions"
- "No conflicting database decisions exist"What was written to CLAUDE.md:
### Architecture Decisions
#### Database: PostgreSQL [2024-01-16]
**Decision:** Use PostgreSQL for all persistent storage
**Rationale:** Strong ACID guarantees, mature ecosystem, team familiarity
**Context:** Evaluated PostgreSQL, MySQL, and MongoDB for new backend service
**Constraints:**
- Must support complex queries
- Team has PostgreSQL experienceExample 2: Detecting Duplicate
Input:
data:
content_type: pattern
pattern: "Wrap external API errors with domain-specific error types"
rationale: "Prevents leaking implementation details"
key: "CLAUDE.md#Patterns"Output:
stored: true # Already present as pattern_err_001; nothing new written
key: "CLAUDE.md#Patterns"
timestamp: "2024-01-16T11:00:00Z"
persisted:
content_type: pattern
content_id: null
destination: "CLAUDE.md"
section: "Patterns"
write_operation:
strategy: append
bytes_written: 0
lines_added: 0
lines_modified: 0
verification:
write_confirmed: false
content_present: true
structure_valid: true
metadata:
source: "conversation:conv_def456"
related_entries: ["pattern_err_001"]
expiry: null
duplicates_found:
- existing_id: "pattern_err_001"
similarity: 0.95
action_taken: skipped
confidence: 0.9
evidence_anchors:
- "CLAUDE.md:134"
assumptions:
- "High similarity indicates same pattern"
- "Skipping to avoid duplicate"
next_actions:
- "Consider updating existing pattern if new rationale is better"Example 3: Merging with Existing Content
Input:
data:
content_type: fact
fact: "API rate limit is 1000 requests per minute"
source: "API documentation v2.3"
key: "docs/api-notes.md#Rate Limits"Merge with the existing entry rather than appending a duplicate.
Output:
stored: true
key: "docs/api-notes.md#Rate Limits"
timestamp: "2024-01-16T12:00:00Z"
persisted:
content_type: fact
content_id: "fact_rate_limit_20240116"
destination: "docs/api-notes.md"
section: "Rate Limits"
write_operation:
strategy: merge
bytes_written: 64
lines_added: 1
lines_modified: 1
verification:
write_confirmed: true
content_present: true
structure_valid: true
metadata:
source: "API documentation v2.3"
related_entries: ["fact_rate_limit_20231201"]
expiry: "2024-07-16"
duplicates_found:
- existing_id: "fact_rate_limit_20231201"
similarity: 0.8
action_taken: merged
confidence: 1.0
evidence_anchors:
- "docs/api-notes.md:23"
- "source:API documentation v2.3"
assumptions:
- "New rate limit supersedes previous"
- "6-month expiry for review"Verification
- Content validated for appropriateness (no secrets/PII)
- Destination file exists or can be created
- Write operation completed without error
- Content present in destination after write
- File structure/formatting preserved
Verification tools: Read (to verify write), Edit (to perform write)
Safety Constraints
mutation: truerequires_checkpoint: falserequires_approval: falserisk: low
Capability-specific rules:
- NEVER persist credentials, API keys, or secrets
- NEVER persist PII without explicit user consent
- Validate content does not contain executable code
- Preserve existing file structure and formatting
- Create backup before replacing existing content
- Stop if destination is a system or configuration file
Composition Patterns
Commonly follows:
decide- Persist decisions for future referencediscover- Save discovered patterns or relationshipsrecall- Update existing memories with new contextsummarize- Save summary as durable knowledge
Commonly precedes:
recall- Persisted content becomes available for recallverify- Verify persisted content is correctaudit- Record what was persisted for compliance
Anti-patterns:
- Never persist without checking for duplicates
- Never persist contradictory information without flagging
- Never persist to files outside project scope without approval
- Avoid persisting ephemeral/temporary information
Workflow references:
- Pairs with
recallfor the remember/recall cycle - Final step in many learning workflows
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.

