agentleFS
synaptiaisynaptiai/agent-capability-standard/skills/recall/SKILL.md

recall

Skill6 starsChanged 14 days agoApache-2.0View on GitHub

Retrieve prior decisions, rationale, and learned patterns from memory to apply consistently. Use when needing context from previous interactions, looking up past decisions, or ensuring consistency with prior reasoning.

142 other projects use a version of this.

Adopted by

Most recently taken up by

Used with

Projects with it also use addskill, apply-firmware and 10 more.

Other files people use alongside this one.

Files found in the same public projects as a version of this one, more often than they turn up anywhere else. Each project counts once, large collections count for less, and this file's own repository is left out.
  • ryanportfolioSkill

    addskill

    Create, import, update, or install repo or personal skills: runtime ownership, resources, discovery checks.

    Also in 6 projects that use this

  • ryanportfolioSkill

    apply-firmware

    Bring current folder (plain folder, existing repo, old or partial firmware copy) up to full Harness Firmware in place. Mirror external repo → adopt-repo.

    Also in 6 projects that use this

  • +10 more from ryanportfolio

The file

We split this skill into the rules it gives an agent

9 rules. 0 are common, 8 are distinctive, and 1 is very specific to this project.

  • 0

    Common

    Most of the 129 edited versions we read keep these.

  • 8

    Distinctive

    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
  1. Distinctive:

    Use Grep for exact term matches, Read for context

    line 50
  2. Distinctive:

    Check consistency: Verify recalled items are internally consistent

    line 63
  3. Distinctive:

    Search session memory only, from 2024-01-16 onward.

    line 182
  4. Distinctive:

    Verification tools: Read (to validate memory file contents), Grep (to search across memory stores)

    line 287
  5. Distinctive:

    Do not recall or expose credentials, secrets, or PII from memory

    line 297
  6. Very specific:

    Do not fabricate memories.

    line 300
  7. Distinctive:

    Never override recalled decisions without explicit user request

    line 315
  8. Distinctive:

    Never recall without checking for contradictions

    line 316
  9. Distinctive:

    Avoid recalling from stale sources without flagging age

    line 317

“Common” is measured: kept by at least 6 in 10 of the 129 edited versions of this file we could read. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

Intent

Execute recall to retrieve relevant prior decisions, rationale, and patterns from memory to maintain consistency and learn from past interactions.

Success criteria:

  • Relevant memories are retrieved based on query
  • Prior decisions and their rationale are surfaced
  • Consistency with past reasoning is maintained
  • Retrieved information is grounded with timestamps and context

Compatible schemas:

  • schemas/output_schema.yaml

Inputs

ParameterRequiredTypeDescription
keyYesstringStorage key
defaultNoanyDefault if not found

Inputs not listed here are outside the capability's contract: a workflow step that binds them gets W604 (STANDARD v1.1 §5.5).

Procedure

  1. Parse query intent: Understand what the key asks to recall
    • Identify if it is about a decision, pattern, fact, or context
    • Extract key terms for memory search
    • Determine if exact match or semantic similarity needed
  2. Scope memory search: Identify which memory stores to query
    • session: Current conversation context
    • project: CLAUDE.md, knowledge files, local docs
    • global: All accessible memory stores
  3. Search memory stores: Query relevant sources
    • CLAUDE.md for project-level decisions and patterns
    • Session context for recent interactions
    • Knowledge files for domain-specific learnings
    • Use Grep for exact term matches, Read for context
  4. Rank by relevance: Score and filter results
    • Relevance to query terms
    • Recency (more recent = higher weight unless historical needed)
    • Authority (explicit decisions > implicit patterns)
    • Filter out matches below a similarity threshold
  5. Extract rationale: For each recalled item, capture reasoning
    • Original decision context
    • Factors that influenced the decision
    • Constraints or assumptions at the time
  6. Check consistency: Verify recalled items are internally consistent
    • Flag contradictions between recalled items
    • Note if context has changed since original decision
  7. Format output: Structure results according to output contract

Output Contract

Return a structured object:

found: boolean  # Whether anything matched the key; when false, data is the `default` input
stored_at: string | null  # ISO 8601 date-time the top match was recorded
data:  # Recalled items, best match first
  - id: string  # Unique identifier for this memory
    type: decision | pattern | fact | context
    content: string  # The recalled information
    rationale: string | null  # Why this decision was made
    source: string  # Where this was found (CLAUDE.md:42, session, etc.)
    timestamp: string | null  # When originally recorded
    relevance_score: number  # 0.0-1.0 match to query
    context:
      project: string | null
      conversation_id: string | null
      original_query: string | null
query_interpretation: string  # How the query was understood
search_scope:
  stores_searched: array[string]
  time_range_applied: object | null
total_matches: integer  # Total before filtering
returned_matches: integer  # After relevance filtering
consistency_check:
  consistent: boolean
  contradictions: array[object] | null
confidence: number  # 0.0-1.0 based on match quality
evidence_anchors: array[string]  # Sources for recalled items
assumptions: array[string]  # Assumptions about memory validity

Field Definitions

FieldTypeDescription
dataanyThe recalled memories (here a list, best match first), or the default input when nothing matched
foundbooleanWhether anything matched the key
stored_atstringISO 8601 date-time the top match was originally recorded
data[].typeenumKind of memory: decision, pattern, fact, or context
data[].rationalestringExplanation for why decision was made
data[].relevance_scorenumberHow well this matches the query
consistency_checkobjectWhether recalled items contradict each other
confidencenumberOverall confidence in recall quality
evidence_anchorsarraySources for recalled items
assumptionsarrayAssumptions about memory validity

Examples

Example 1: Recalling a Project Decision

Input:

key: "error handling approach"

Output:

found: true
stored_at: "2024-01-10T09:15:00Z"
data:
  - id: "decision_err_001"
    type: decision
    content: "Use Result<T, Error> pattern for all fallible operations; avoid exceptions"
    rationale: "Explicit error handling improves debuggability and makes failure paths visible in types"
    source: "CLAUDE.md:127"
    timestamp: "2024-01-10T09:15:00Z"
    relevance_score: 0.95
    context:
      project: "api-service"
      conversation_id: "conv_abc123"
      original_query: "How should we handle errors in this codebase?"
  - id: "pattern_err_001"
    type: pattern
    content: "Wrap external API errors with domain-specific error types before propagating"
    rationale: "Prevents leaking implementation details; enables consistent error messages"
    source: "CLAUDE.md:134"
    timestamp: "2024-01-10T09:20:00Z"
    relevance_score: 0.88
    context:
      project: "api-service"
      conversation_id: "conv_abc123"
      original_query: null
query_interpretation: "Looking for decisions and patterns related to error handling in the codebase"
search_scope:
  stores_searched: ["CLAUDE.md", "docs/architecture.md"]
  time_range_applied: null
total_matches: 5
returned_matches: 2
consistency_check:
  consistent: true
  contradictions: null
confidence: 0.92
evidence_anchors:
  - "CLAUDE.md:127"
  - "CLAUDE.md:134"
assumptions:
  - "CLAUDE.md reflects current project decisions"
  - "No conflicting decisions recorded elsewhere"

Evidence pattern: Each recalled item traced to specific file:line; rationale extracted from surrounding context.


Example 2: Recalling Session Context

Input:

key: "user's preferred output format"

Search session memory only, from 2024-01-16 onward.

Output:

found: true
stored_at: "2024-01-16T10:30:00Z"
data:
  - id: "ctx_fmt_001"
    type: context
    content: "User prefers YAML output over JSON for configuration files"
    rationale: "User stated 'I find YAML more readable' in earlier message"
    source: "session:message_42"
    timestamp: "2024-01-16T10:30:00Z"
    relevance_score: 0.97
    context:
      project: null
      conversation_id: "current_session"
      original_query: "Can you output this as YAML instead?"
query_interpretation: "Looking for user preferences about output formatting from current session"
search_scope:
  stores_searched: ["session"]
  time_range_applied:
    after: "2024-01-16T00:00:00Z"
    before: null
total_matches: 1
returned_matches: 1
consistency_check:
  consistent: true
  contradictions: null
confidence: 0.97
evidence_anchors:
  - "session:message_42"
assumptions:
  - "User preference still valid within session"
  - "No subsequent preference change"

Example 3: Detecting Contradictory Memories

Input:

key: "database choice"

Output:

found: true
stored_at: "2024-01-05T14:00:00Z"
data:
  - id: "decision_db_001"
    type: decision
    content: "Use PostgreSQL for all persistent storage"
    rationale: "Strong ACID guarantees, mature ecosystem"
    source: "CLAUDE.md:45"
    timestamp: "2024-01-05T14:00:00Z"
    relevance_score: 0.94
    context:
      project: "backend-service"
      conversation_id: "conv_xyz789"
      original_query: "Which database should we use?"
  - id: "decision_db_002"
    type: decision
    content: "Use SQLite for local development and testing"
    rationale: "Faster setup, no external dependencies"
    source: "docs/dev-setup.md:23"
    timestamp: "2024-01-12T11:30:00Z"
    relevance_score: 0.85
    context:
      project: "backend-service"
      conversation_id: "conv_def456"
      original_query: "How to speed up local dev?"
query_interpretation: "Looking for decisions about database selection"
search_scope:
  stores_searched: ["CLAUDE.md", "docs/"]
  time_range_applied: null
total_matches: 2
returned_matches: 2
consistency_check:
  consistent: false
  contradictions:
    - items: ["decision_db_001", "decision_db_002"]
      attribute: "database"
      resolution_hint: "Different contexts: production vs development"
confidence: 0.75
evidence_anchors:
  - "CLAUDE.md:45"
  - "docs/dev-setup.md:23"
assumptions:
  - "Both decisions are currently valid"
  - "Context difference (prod vs dev) resolves contradiction"
next_actions:
  - "Clarify if query refers to production or development"
  - "Document environment-specific database strategy"

Verification

  • Query intent correctly interpreted
  • All relevant memory stores searched within scope
  • relevance_score reflects actual match quality
  • Contradictions detected and flagged
  • evidence_anchors provide traceable source references

Verification tools: Read (to validate memory file contents), Grep (to search across memory stores)

Safety Constraints

  • mutation: false
  • requires_checkpoint: false
  • requires_approval: false
  • risk: low

Capability-specific rules:

  • Do not recall or expose credentials, secrets, or PII from memory
  • Respect memory scope boundaries; do not access global when session requested
  • Flag stale memories (>30 days) with lower confidence
  • Do not fabricate memories; if nothing is found return found: false with data set to the default input (or null)

Composition Patterns

Commonly follows:

  • receive - After receiving a request, recall relevant context
  • search - Search results may trigger memory lookup for similar past queries

Commonly precedes:

  • decide - Recalled decisions inform new decision-making
  • plan - Past patterns guide new plan creation
  • explain - Recalled rationale used to explain current approach
  • persist - New decisions should be consistent with recalled ones

Anti-patterns:

  • Never override recalled decisions without explicit user request
  • Never recall without checking for contradictions
  • Avoid recalling from stale sources without flagging age

Workflow references:

  • Memory recall is implicit in many workflows as context loading
  • Pairs with persist for the remember/recall cycle

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.