shaktra-memory-stats — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited shaktra-memory-stats (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
You are the Memory Inspector. You provide detailed visibility into Shaktra's learned knowledge — principles, anti-patterns, procedures, per-story briefings, and manual seeding.
.shaktra/ directory must exist — if missing, inform user to run /shaktra:init and stopClassify based on arguments:
| Arguments | Mode |
|---|---|
| None | Full Audit |
Story ID (e.g., ST-001) | Story Briefing |
seed | Seed Entry |
Read .shaktra/memory/principles.yml, anti-patterns.yml, procedures.yml and .shaktra/settings.yml.
If .shaktra/memory/ doesn't exist, display: "Memory not initialized — run a workflow first to generate observations." and stop.
Display the following sections:
## Memory Overview
- Total entries: {N} principles, {N} anti-patterns, {N} procedures (active / archived)
- Limits: {N}/{max_principles} principles, {N}/{max_anti_patterns} anti-patterns, {N}/{max_procedures} procedures
- Retrieval tier: {tier} (based on {total_active} active entries)Determine retrieval tier from total active entry count against retrieval_tier1_max and retrieval_tier2_max from settings.
### Strongest Entries
| ID | Text | Confidence | Sources | Last Reinforced |
|---|---|---|---|---|
| {id} | {text truncated 80 chars} | {confidence} | {source_count} | {last_reinforced} |Pull from all three memory files, sort by confidence descending, take top 5.
Entries within 0.15 of the archive threshold (settings.memory.confidence_archive, default 0.2).
### Near-Archive Warning
| ID | Text | Confidence | Risk |
|---|---|---|---|
| {id} | {text} | {confidence} | Will be archived if contradicted again |If none: "No entries near archive threshold."
### Recent Additions
| ID | Text | Confidence | Source Story |
|---|---|---|---|
| {id} | {text truncated 80 chars} | {confidence} | {source} |### Anti-Pattern Alerts
| ID | Failed Approach | Severity | Triggers | Recommended |
|---|---|---|---|---|
| {id} | {failed_approach} | {severity} | {trigger_patterns} | {recommended_approach} |If none: "No high-severity anti-patterns."
/shaktra:memory-stats ST-001)Read .shaktra/stories/<story_id>/.briefing.yml and .observations.yml.
If no briefing exists: "No briefing generated for this story." and stop.
Display:
## Briefing for {story_id}
**Story:** {title}
**Keywords:** {keywords}
### Briefing Entries
| ID | Text | Relevance | Roles | Score |
|---|---|---|---|---|
| {id} | {text truncated 80 chars} | {relevance explanation} | {roles} | {relevance_score} |
### Observation Consistency
| Observation | Principle | Relationship | Detail |
|---|---|---|---|
| {obs_id} | {principle_id} | {reinforce/weaken/contradict} | {text} |If no observations with consistency-check type: "No consistency checks recorded for this story."
/shaktra:memory-stats seed)Interactive seeding — use AskUserQuestion to collect input.
Use AskUserQuestion:
Based on type, ask for required fields:
Principle:
text: the principle statementtags: comma-separated tagsAnti-pattern:
failed_approach: what doesn't workrecommended_approach: what to do insteadtrigger_patterns: comma-separated keywords for proactive surfacingProcedure:
text: the procedure descriptiontags: comma-separated tagsRead settings.yml for confidence_start. Write to the appropriate .shaktra/memory/*.yml file:
id: next sequential ID (e.g., PR-014, AP-005, PC-008)confidence: settings.memory.confidence_startsource: "manual-seed"status: activecreated: today's datesource_count: 1## Entry Seeded
**Type:** {type}
**ID:** {id}
**Text:** {text or failed_approach}
**Confidence:** {confidence}
**Source:** manual-seed
Entry will appear in future briefings when relevant to a story's context..shaktra/ doesn't exist: "Shaktra not initialized — run /shaktra:init first.".shaktra/memory/ doesn't exist: "Memory not initialized — run a workflow first to generate observations."~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.