Skip to content
Skill Authoring
Skill

/quill

Use when the user says 'create quotation', 'generate quote', 'proposal', or needs a client-facing price document.

BOOST
From plugin
memstack
42587 skills2 commands4 hooks
Install
$ npx -y skills add cwinvestments/memstack --skill quill --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/quill

Context preview

The summary Claude sees to decide when to auto-load this skill.

Use when the user says 'create quotation', 'generate quote', 'proposal', or needs a client-facing price document.

SKILL.md

quill.SKILL.md
name: quill
description: "Use when the user says 'create quotation', 'generate quote', 'proposal', or needs a client-facing price document."
version: 1.0.0

✒️ Quill: Drafting Quotation...

*Generate professional client quotations and proposals.*

Activation

When this skill activates, output:

`✒️ Quill: Drafting quotation...`

Then execute the protocol below.

Protocol

1. **Gather requirements**: ask the user for:

  • Client name and company
  • Project description (or "use Scan results" if just scanned)
  • Timeline expectations
  • Any specific requirements or constraints

2. **If project was already scanned**: use the Scan results for scope and pricing 3. **If not scanned**: run a quick Scan first to get baseline metrics

4. **Generate the quotation** using `templates/client-quote.md`:

  • Professional header with CW Affiliate Investments info
  • Project scope breakdown with line items
  • Three pricing tiers (if applicable)
  • Timeline with milestones
  • Terms and conditions
  • Valid-until date (30 days from now)

5. **Save to SQLite** (primary):

Write the payload to a file, then pipe it in with `-` as the argument. A payload on stdin is never seen by the shell's parser, so a redirection operator inside the scope summary cannot be read as one.

   cat quote-context.json | python "${CLAUDE_PLUGIN_ROOT}/db/memstack-db.py" set-context -

`quote-context.json` contains:

   {"project":"<client>","last_quote_date":"<date>","quote_summary":"<scope>"}

6. **Also save markdown copy** to `memory/projects/{client}-quote-{date}.md` (human-readable backup) 7. **Present formatted** for copy-paste into email or PDF export

Inputs

  • Client name and company
  • Project requirements or Scan results

Outputs

  • Professional quotation document
  • Quote context saved to SQLite database
  • Markdown backup in memory/projects/

Example Usage

**User:** "generate a quote for John at GreenTech for an admin dashboard"

✒️ Quill: Drafting quotation...

CW AFFILIATE INVESTMENTS
Quotation, GreenTech Corp
Date: 2026-02-18 | Valid Until: 2026-03-20

Scope: Full-stack admin dashboard with auth, CRUD, payments
Standard: $22,000 | Timeline: 7 weeks

Saved: memory/projects/greentech-quote-2026-02-18.md

Level History

  • **Lv.1**: Base: Template-based quotation generation. (Origin: MemStack v1.0, Feb 2026)
  • **Lv.2**: Enhanced: Added YAML frontmatter, activation message, Scan integration. (Origin: MemStack v2.0 MemoryCore merge, Feb 2026)
Read more
Ships withmemstack

The structured skill framework for Claude Code: 131 professional skills for deployment, security, databases, content, marketing, and more. Skills activate automatically when you need them. Say "deploy this to Railway" and the right skill loads on demand.

Get the whole plugin

Other skills on memstack.