Agent skill
skill-optimizer-lawvable
Guide to analyze a current work session and propose improvements to skills. Use (1) automatically after working with a skill to capture learnings, (2) when the user suggests improvements, corrections, or additions during a skill-related session, or (3) when the user manually invokes `self-improve`.
Install this agent skill to your Project
npx add-skill https://github.com/lawvable/awesome-legal-skills/tree/main/skills/skill-optimizer-lawvable
Metadata
Additional technical details for this skill
- author
- Malik Taiar (Lawvable)
- license
- AGPL-3.0
- version
- 2026.01.07
SKILL.md
Self-Improve Skill
Analyze the current conversation and propose improvements to skills based on corrections, successes, and edge cases discovered during the work session.
Triggers
self-improve- Analyze session and propose improvementsself-improve [skill-name]- Target a specific skillself-improve on- Enable automatic mode (hook)self-improve off- Disable automatic modeself-improve status- Show automatic mode statusself-improve [skill-name] history- Show modification history
Main Workflow (self-improve)
Step 1: Identify the Skill
If skill name not provided, list available skills from skills/ directory and ask:
Which skill should I analyze for this session?
[List skills found in skills/ directory]
Step 2: Detect Signals
Scan the conversation for signals - moments where the user expressed feedback:
| Signal Type | Examples |
|---|---|
| Correction | "No", "That's not right", "It's missing X", "Always do Y", user rewrites output |
| Success | "Perfect", "Yes", "Exactly", user accepts without changes |
| Edge case | User needed a workaround, skill couldn't handle the request |
Step 3: Evaluate Each Signal for Quality
For each correction signal, evaluate if it can become a good skill instruction.
Quality Criteria
1. COMPLETE
The instruction includes all information needed to apply it. No need to look elsewhere or make assumptions.
| Grade | Example |
|---|---|
| Pass | "Structure output as: Key Terms / Risk Areas / Suggested Revisions" |
| Fail | "Use the standard format" (which format?) |
| Fail | "Follow our firm's guidelines" (what guidelines?) |
2. PRECISE
No vague or subjective terms. Two different people reading the instruction would understand it the same way.
| Grade | Example |
|---|---|
| Pass | "Flag non-compete clauses over 12 months as high risk" |
| Fail | "Be more thorough in the analysis" |
| Fail | "Make it more appropriate for clients" |
3. ATOMIC
One instruction addresses one single requirement. Multiple checks should be split into separate instructions.
| Grade | Example |
|---|---|
| Pass | "Check for governing law clause" |
| Fail | "Check for governing law, jurisdiction, and arbitration clauses" (three checks - split them) |
4. STABLE
If referencing regulations or standards, specify the version or date. The instruction should be evaluable the same way regardless of when it's read.
| Grade | Example |
|---|---|
| Pass | "Review the termination provisions under our internal policy [policy name and reference], dated December 12, 2024." |
| Fail | "Follow latest market standards" (which standards? will change over time) |
Step 4: Grade the Signal
| Criteria Met | Action |
|---|---|
| All 4 criteria pass | Add to skill directly |
| Less than 4 criteria | Ask for clarification (see Step 5) |
Step 5: Ask for Clarification
When feedback doesn't meet all criteria, ask for what's missing using the AskUserQuestion tool:
I detected a correction but need more information to improve the skill.
You said: "[user's feedback]"
To create a clearer instruction, I need the following information:
[Structured tool call listing what's missing based on failed criteria]
If the user provides clarification → Update the instruction and proceed to Step 6.
If the user prefers the original → Proceed to Step 6 with the original instruction.
Step 6: Propose Changes
--- Learning: [skill-name] ---
Proposed additions:
1. "[exact instruction to add]"
Source: "[quote from conversation]"
2. "[exact instruction to add]"
Source: "[quote from conversation]"
---
Apply these changes? [Y/n]
Step 7: If Approved
-
Update SKILL.md
- Read
skills/[skill-name]/SKILL.md - Add each instruction in the appropriate section
- Each instruction must be readable and applicable on its own
- Read
-
Update
skills/[skill-name]/CHANGELOG.md- Create if doesn't exist
- Add new entry AT THE TOP:
markdown
## [DATE (format: "January 7, 2026")] [Description of changes in natural language, 1-3 sentences] - Entry rules:
- Most recent at top
- 1-3 sentences max
- Natural language
- No git references
Step 8: Save Observations
For signals that couldn't be processed, offer to save:
Save these observations for later review?
- "[signal 1]" - Status: [why insufficient]
- "[signal 2]" - Status: [why insufficient]
If yes, append to skills/[skill-name]/OBSERVATIONS.md
Secondary Commands
self-improve on
- Run:
bash
rm -f ./.disabled - Reply: "Automatic mode enabled."
self-improve off
- Run:
bash
touch ./.disabled - Reply: "Automatic mode disabled."
self-improve status
Check .disabled file existence and report.
self-improve [skill-name] history
- Display CHANGELOG.md content
- Ask: "Would you like to revert to a previous version?"
- If yes:
- update the appropriate sections in
skills/[skill-name]/SKILL.md - update
skills/[skill-name]/CHANGELOG.mdwith a rollback note
- update the appropriate sections in
Examples
Example 1: All criteria met
User said: "Always flag non-compete clauses over 12 months as high risk"
Evaluation:
- Complete: Yes - instruction is fully specified
- Precise: Yes - "12 months" and "high risk" are clear
- Atomic: Yes - single check
- Stable: Yes - no time dependency
Result: Add directly
Example 2: Missing criteria
User said: "Flag any non-market-standard indemnification clause"
Evaluation:
- Complete: No - "non-market-standard" is not defined
- Precise: No - "market standard" is subjective and varies by deal type
- Atomic: Yes - single check
- Stable: No - market standards evolve over time
Action: Ask for clarification using the AskUserQuestion tool:
I detected a correction but need more details.
You said: "Flag any non-market-standard indemnification clause"
To make this actionable, can you specify:
- What makes an indemnification clause "non-market-standard"? (e.g., uncapped liability, coverage of indirect damages, no carve-outs for gross negligence)
Do you want to provide more details, or should I add the instruction as you stated it?
If user clarifies: Update the instruction and add it. If user prefers the original: Add the instruction as stated.
Important Notes
- Never guess what the user meant - always ask if unclear
- Never infer requirements from context - they must be explicit
- One instruction = one check - split bundled feedback
- Fewer good instructions is better than many vague ones
- CHANGELOG.md is the user-facing record
Recommended Agent Skills
Expand your agent's capabilities with these related and highly-rated skills.
docx-processing-anthropic
Use this skill whenever the user wants to create, read, edit, or manipulate Word documents (.docx files). Triggers include: any mention of 'Word doc', 'word document', '.docx', or requests to produce professional documents with formatting like tables of contents, headings, page numbers, or letterheads. Also use when extracting or reorganizing content from .docx files, inserting or replacing images in documents, performing find-and-replace in Word files, working with tracked changes or comments, or converting content into a polished Word document. If the user asks for a 'report', 'memo', 'letter', 'template', or similar deliverable as a Word or .docx file, use this skill. Do NOT use for PDFs, spreadsheets, Google Docs, or general coding tasks unrelated to document generation.
privacy-policy-malik-taiar
Guide for drafting privacy policies compliant with GDPR. Includes CNIL 2020 recommendations, a reference template, and best practices. Use when drafting or revising a privacy policy for a website or application.
xlsx-processing-anthropic
Use this skill any time a spreadsheet file is the primary input or output. This means any task where the user wants to: open, read, edit, or fix an existing .xlsx, .xlsm, .csv, or .tsv file (e.g., adding columns, computing formulas, formatting, charting, cleaning messy data); create a new spreadsheet from scratch or from other data sources; or convert between tabular file formats. Trigger especially when the user references a spreadsheet file by name or path — even casually (like "the xlsx in my downloads") — and wants something done to it or produced from it. Also trigger for cleaning or restructuring messy tabular data files (malformed rows, misplaced headers, junk data) into proper spreadsheets. The deliverable must be a spreadsheet file. Do NOT trigger when the primary deliverable is a Word document, HTML report, standalone Python script, database pipeline, or Google Sheets API integration, even if tabular data is involved.
legal-simulation-patrick-munro
Framework for demonstrating AI capabilities in legal contexts. Provides detailed personas across tenant law, business contracts, startup disputes, employment claims, and consumer protection with progressive complexity scenarios. Use when: (1) Demonstrating AI-powered legal triage or intake systems, (2) Showcasing responsible AI-assisted client interactions, (3) Training staff on appropriate AI use in legal contexts, (4) Creating realistic scenarios for legal tech presentations, (5) Developing educational materials about AI in legal services, or (6) Testing AI-powered legal information systems in controlled environments.
contract-review-anthropic
Review contracts against your organization's negotiation playbook, flagging deviations and generating redline suggestions. Use when reviewing vendor contracts, customer agreements, or any commercial agreement where you need clause-by-clause analysis against standard positions.
cookie-policy-malik-taiar
Guide for drafting cookie policies compliant with GDPR and the ePrivacy Directive. Includes CNIL 2020 recommendations, a reference template, and best practices. Use when drafting or revising a cookie policy for a website or application.
Didn't find tool you were looking for?