Agentic memory system for writers - track characters, relationships, scenes, and themes
34
30%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Optimize this skill with Tessl
npx tessl skill review --optimize ./skills/writer-memory/SKILL.mdQuality
Discovery
32%Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.
The description identifies a clear domain (writing memory management) and lists the key entities it handles, which is a good start. However, it lacks a 'Use when...' clause, doesn't describe concrete actions beyond 'track', and misses common trigger terms writers would use. The description reads more like a tagline than a functional skill description.
Suggestions
Add an explicit 'Use when...' clause, e.g., 'Use when the user is writing fiction and needs to maintain consistency across characters, plot threads, or story elements, or when they mention character sheets, story bibles, or worldbuilding.'
Expand the action verbs beyond 'track' to describe specific capabilities, e.g., 'Creates and updates character profiles, maps relationship networks, maintains scene timelines, and ensures thematic consistency across a narrative.'
Include more natural trigger terms writers would use, such as 'novel', 'story', 'fiction', 'plot', 'worldbuilding', 'character sheet', 'story bible', 'continuity'.
| Dimension | Reasoning | Score |
|---|---|---|
Specificity | Names the domain (writing/memory system) and lists some specific entities it tracks (characters, relationships, scenes, themes), but doesn't describe concrete actions beyond 'track'. What does tracking entail? Creating, updating, querying, linking? | 2 / 3 |
Completeness | Describes what it does (tracks characters, relationships, scenes, themes) but completely lacks a 'Use when...' clause or any explicit trigger guidance for when Claude should select this skill. Per rubric guidelines, missing 'Use when' caps completeness at 2, and the 'what' is also only partially described, warranting a 1. | 1 / 3 |
Trigger Term Quality | Includes relevant terms like 'characters', 'relationships', 'scenes', 'themes', and 'writers' which users might mention. However, it misses common variations like 'novel', 'story', 'worldbuilding', 'plot', 'character sheet', 'story bible', or 'fiction'. | 2 / 3 |
Distinctiveness Conflict Risk | The combination of 'agentic memory system' and 'writers' creates a somewhat distinct niche, but 'track characters, relationships, scenes, and themes' could overlap with general writing assistance skills, story planning tools, or other creative writing skills. | 2 / 3 |
Total | 7 / 12 Passed |
Implementation
27%Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.
This skill is comprehensive in scope but severely over-documented for a SKILL.md file. It repeats the same character examples across multiple sections, explains self-evident field names, and includes a full JSON schema inline rather than referencing it. The content reads more like product documentation than an actionable skill for Claude, and lacks actual implementation details for how the commands work under the hood.
Suggestions
Reduce content by 60-70%: remove field description tables for obvious concepts (e.g., 'setting: Time, place, social context'), eliminate repeated character examples, and move the full JSON schema to a separate SCHEMA.md file.
Add implementation details: show how commands actually read/write memory.json (e.g., the jq or Python code that manipulates the JSON), since currently the skill describes desired behavior without executable implementation.
Split into progressive disclosure structure: keep SKILL.md as a concise overview with commands table and one brief example, then reference separate files like MEMORY-TYPES.md, SCHEMA.md, EXAMPLES.md, and VALIDATION.md.
Add validation checkpoints to the workflow: after writing to memory.json, verify the file is valid JSON; after character updates, confirm the update was persisted correctly.
| Dimension | Reasoning | Score |
|---|---|---|
Conciseness | Extremely verbose at ~400+ lines. Exhaustively documents every field, every memory type, every command with full tables, then repeats much of the same information in the storage schema, examples, and synopsis sections. Claude doesn't need explanations of what 'setting' or 'atmosphere' mean, nor does it need the same character example repeated 4+ times across sections. | 1 / 3 |
Actionability | Commands are clearly listed and examples show usage patterns, but there's no actual executable code—no implementation scripts, no JSON manipulation logic, no indication of how the slash commands are implemented. The commands appear to be specifications rather than working implementations, and the validation/query features describe desired outputs without showing how they're produced. | 2 / 3 |
Workflow Clarity | The full workflow example at the end provides a clear sequence of commands, and the behavior section mentions auto-backup before modifications. However, there are no explicit validation checkpoints (e.g., verifying memory.json integrity after writes), no error recovery steps in the workflow itself, and the troubleshooting section is separated from the workflow rather than integrated as feedback loops. | 2 / 3 |
Progressive Disclosure | Everything is in a single monolithic file with no references to supporting documents. The storage schema, detailed field tables for all 5 memory types, full examples, synopsis elements, and troubleshooting are all inline. Much of this content (especially the full JSON schema, detailed field descriptions, and the extensive example outputs) should be split into separate reference files. | 1 / 3 |
Total | 6 / 12 Passed |
Validation
90%Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.
Validation — 10 / 11 Passed
Validation for skill structure
| Criteria | Description | Result |
|---|---|---|
frontmatter_unknown_keys | Unknown frontmatter key(s) found; consider removing or moving to metadata | Warning |
Total | 10 / 11 Passed | |
679b418
Table of Contents
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.