k2f-purchase-order — Claude Code skill: vendor-ready POs
Turns a requisition, quote or pasted line items into an issuance-ready purchase order a vendor can fulfil, ship and invoice against.
npx skills add suzheng/k2f --skill k2f-purchase-order -a claude-codeWhat k2f-purchase-order does
The skill walks the agent through a blueprint first: content_and_design.md holds buyer and vendor identity, ship-to and bill-to routing, reference numbers for the linked quote or requisition, the line-item table and the totals story. From that blueprint it builds a .K2F package and exports it. The agent stays on meaning — who is buying, who supplies, what is ordered, where it ships — while the K2F engine compiles layout, typography and theme.
There is an issuance gate. No send-ready document without a PO number, issue date, currency, reconciled total, vendor identity and ship/bill routing for physical goods. Line extensions drive the subtotal, and fees or taxes apply only to the documented base. When a quote total and a requisition total disagree, the skill marks NEEDS USER CONFIRMATION instead of quietly picking one. Vendor details, tax figures, payment terms and the approver name come from you only; invented part numbers and catalog prices get stripped.
This skill sits on top of k2f, so install the core first: npx skills add suzheng/k2f --skill k2f. Without it the unpack, semantic-tree edit, pack/verify and export steps have nothing to run on. That is worth checking if the agent complains about a missing engine.
What it helps with
- issue a PO from an approved quote
- turn a vague "we need 50 laptops" into numbered rows with quantity and price
- reconcile subtotal, freight and taxes into one PO total
- separate buyer, ship-to and bill-to addresses when they differ
- flag missing tax or terms instead of inventing them
Example prompts for the agent
- create a purchase order from this quote, vendor details are in the file
- build a PO from the line-item list, ship to the warehouse, bill the legal entity
- rebuild this draft PO so references, quantities and totals match the requisition
How to install k2f-purchase-order
1Skills CLI (Vercel)
npx skills add suzheng/k2f --skill k2f-purchase-order -a claude-code2Manually: put the files in place
~/.claude/skills/k2f-purchase-order/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/k2f-purchase-order/
1Skills CLI (Vercel)
npx skills add suzheng/k2f --skill k2f-purchase-order -a codex2Manually: put the files in place
.agents/skills/k2f-purchase-order/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add suzheng/k2f --skill k2f-purchase-order -a cursor2Manually: put the files in place
.cursor/skills/k2f-purchase-order/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install suzheng/k2f k2f-purchase-order2Manually: put the files in place
.github/skills/k2f-purchase-order/SKILL.md1Skills CLI (Vercel)
npx skills add suzheng/k2f --skill k2f-purchase-order -a gemini-cli2Platform CLI
gemini skills install https://github.com/suzheng/k2f --path skills/business/k2f-purchase-orderManually: put the files in place
.devin/skills/k2f-purchase-order/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add suzheng/k2f --skill k2f-purchase-order -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about k2f-purchase-order
How do I install k2f-purchase-order in Claude?
Install the core skill first: npx skills add suzheng/k2f --skill k2f. Then the PO skill: npx skills add suzheng/k2f --skill k2f-purchase-order -a claude-code. It lands at ~/.claude/skills/k2f-purchase-order/SKILL.md.
What does k2f-purchase-order do?
It produces a purchase order: parties, ship and bill routing, a line-item table with quantities and prices, the totals story and terms. Output is a .K2F package exported to the format you need.
Do I need the k2f skill as well?
Yes. This skill writes the blueprint and relies on k2f to unpack a workspace, edit the semantic tree, verify and export. Without the core, the build steps have nothing to run on.
Source text
SKILL.md · Apache-2.0
--- name: k2f-purchase-order description: Create issuance-ready purchase orders from requisitions, quotes, or line-item lists—structured so vendors can fulfill, ship, and invoice without clarification loops. Use when the user asks for a purchase order, PO, procurement order, or buyer-issued order to a supplier. Create purchase orders with AI-native design and the highest aesthetic standards, powered by the K2F format and engine. Purpose-built for AI agents, K2F lets them focus on semantic content and design intent while automatically handling layout, typography, and formatting complexity. --- # K2F Purchase Order — AI-Native Aesthetic Design ## Purpose Teach agents to blueprint purchase orders before layout: unambiguous buyer–vendor identity, ship and bill routing, a reconciled line-item commitment, and visual hierarchy that surfaces **what is ordered, for where, by when, and under which terms**—without inventing SKUs, prices, or authorization the user did not supply. ## Built on K2F This skill produces purchase orders as `.K2F` packages. Follow the **k2f** skill for authoring: unpack or init a workspace, edit the semantic tree, run pack/verify, then export. K2F keeps agents on *meaning* (parties, line roles, totals, delivery block)—not pixel coordinates—while the engine compiles layout, typography, and theme into consistent output across PDF and other formats. Before you build, install the core skill: `npx skills add suzheng/k2f --skill k2f`. ## When to Use - Issuing a PO from an approved quote, requisition, catalog cart, or pasted line items. - Rebuilding a vague or generic AI PO so references, quantities, and totals match what procurement will send. - Standard goods PO, services PO, or blanket/call-off PO where only user-defined scope belongs on the document. ## Workflow ### Step 1. Generate the content_and_design.md Single blueprint for semantic content and aesthetic intent. Use labeled blocks the **k2f** skill can map to regions later. **Sub-steps** 1. **PO type & commitment frame** — Standard goods, services, blanket/call-off, or change order against an existing PO. Note currency, locale formatting, and whether prices are firm or estimate-only. Omit sections the type does not need (e.g., skip ship-to on pure services if user says digital delivery only). 2. **Party & routing block** — **Buyer** (issuing entity): legal name, address, contact, logo intent. **Vendor**: supplier name and address **only from user**. **Ship-to** and **bill-to** when they differ from buyer HQ; attention or receiving dock notes verbatim. Never fabricate vendor tax IDs, DUNS, or buyer approver names. 3. **Reference metadata** — PO number, issue date, requested or **expected delivery** date (header and/or per line if user supplied). Linked quote, RFQ, requisition, contract, or prior PO for amendments. One currency for the whole document; flag missing delivery expectation before layout. 4. **Line-item architecture** — Table-first, not narrative paragraphs. Per row: line number, description, optional part/SKU/model, quantity, unit, unit price, extended amount. Group sections (hardware vs installation) only when user data already splits that way. Change-order lines reference what they replace or add—never merge unrelated SKUs into one vague row. 5. **Totals story (write the math in the doc)** — Subtotal → freight/handling, each tax or fee with labeled rate → **PO total**. State rounding (per line vs document). If quote and requisition totals conflict, mark `NEEDS USER CONFIRMATION` instead of picking one silently. 6. **Terms & fulfillment footer** — Payment terms, incoterms or shipping method **verbatim from user**. Special instructions (partial ship OK, packing, invoicing rules, remit-to). Authorized-by or signature block only if user named a role or name. Keep legal boilerplate minimal unless user supplied text. 7. **Design intent** — Tone, hierarchy, density, palette for the engine: - **Tone**: authoritative, operational B2B; zero sales language—this is a binding request to supply. - **Hierarchy**: “Purchase Order” + PO number and **vendor name** scannable in header; **line table** primary; **ship-to** and **PO total** strong in secondary zones; terms footer tertiary. - **Density**: warehouse-friendly table rhythm; stable column order (#, item, qty, unit price, extended); right-align money; tabular numerals; one compact notes block max on the main view. - **Palette**: restrained neutrals, one accent on PO number and total; WCAG AA; clear separation between routing addresses and line data. **Rules & constraints** - **Issuance gate**: no send-ready blueprint without PO number, issue date, currency, reconciled total, vendor identity, and ship/bill routing when physical goods are involved. - **Single source of truth**: line extensions drive subtotal; fees and taxes apply to the documented base only. - **Reference discipline**: quote/req/contract IDs appear in metadata and optionally per line—not duplicated in prose. - **Honesty gate**: mark missing tax, freight, or authorization; never infer catalog prices or approval without user input. **Common failure modes** - Paragraph “we need 50 laptops” → rewrite as numbered rows with qty, unit, and price. - Missing ship-to or conflated buyer and ship-to → split addresses explicitly. - Quote marketing copy in line descriptions → replace with fulfillment labels (SKU, spec, qty). - Buried PO total or delivery date → promote in metadata and design intent. - Invented part numbers, payment terms, or approver → strip; use `TBD — user must supply`. - Mixed currencies or duplicate line numbers → renumber or escalate. **Quality checklist** - [ ] Buyer, vendor, and ship/bill addresses match user-supplied data only. - [ ] Line qty × unit price reconciles to subtotal under stated rounding. - [ ] Fees/taxes sum to PO total; amendment POs reference parent PO if applicable. - [ ] Expected delivery aligns with terms and line-level dates when both exist. - [ ] Design intent names emphasis for PO number, vendor, table, ship-to, and total. - [ ] All figures traceable to user inputs or explicit formulas in the doc. ### Step 2. Use the content_and_design.md and k2f skill to generate a K2F file and export to an appropriate file format. Follow **k2f** skill to instantiate the purchase order from the blueprint, apply roles from design intent, verify, and export the issuance-ready deliverable.
© suzheng · Apache-2.0 · suzheng/k2f