方法与优势
三个工具将支出分类、采购延迟和整合机会分开检查,帮助团队区分究竟是某类采购成本高,还是审批和下单过程太慢。不同问题可以交给相应负责人处理,避免只用压价解决所有采购问题。
通过采购支出分析,看清钱花在哪些类别、采购流程慢在哪一步。提供支出明细、供应商资料和采购单时间记录后,这项 Skill 会用 Python 工具整理类别、检查采购周期,并评估供应商整合机会,同时关注集中采购可能带来的供应中断和依赖风险。
采购优化既要看成本,也要看经营可靠性。这项 Skill 分别分析类别支出、采购周期延迟和供应商集中程度,让团队讨论节省空间时,也能同时看到更换供应商或调整流程可能带来的代价。
适合采购复盘、续约准备或供应商整合前使用。工具根据导出资料生成分析和建议,供团队进一步确认;不会写回 ERP、代替谈判,也不能把估计节省直接当作已经可实现的收益。
三个工具将支出分类、采购延迟和整合机会分开检查,帮助团队区分究竟是某类采购成本高,还是审批和下单过程太慢。不同问题可以交给相应负责人处理,避免只用压价解决所有采购问题。
供应商关键程度、续约日期和备用方案会为整合建议提供背景。减少供应商数量之前,可以把潜在节省与集中风险放在一起比较,特别关注重要物料或服务是否仍有可靠替代来源。
支出明细、供应商记录、采购单日期、续约日期、关键程度和应急预案。
使用支持 Skill 且能访问文件的 Agent。随包 Python 辅助工具需要 Python 3;提供数据前先查看样例结构。
建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。
将指令复制给 Codex 或 Claude Code,让助手从原始仓库下载固定提交,安装完整文件并检查所需依赖。
请在我当前使用的应用中安装 procurement-optimizer,直接执行文件安装,不要只解释步骤。
原始仓库:https://github.com/alirezarezvani/claude-skills.git
固定提交:6d2f02ea077eead1bee5411a31bcc6db5a11a70c
Skill 路径:business-operations/skills/procurement-optimizer
1. 将这个版本下载到新目录。执行随包脚本前,先阅读 SKILL.md 和安装参考文件,不替换成其他作者的包。
2. Codex 安装到 ~/.agents/skills/procurement-optimizer,Claude Code 安装到 ~/.claude/skills/procurement-optimizer,只安装到我正在使用的应用。安装完整 Skill 文件夹,保留 scripts、references、assets 和随包声明;将仓库根目录许可证一并保留。先检查所有目标目录;已有安装时,说明差异后再决定是否替换。
3. 比较来源和安装目录的文件清单、文件哈希,检查文档要求的运行时、依赖及外部连接。只配置此 Skill 所需的本地依赖,适用时使用隔离环境;账号登录由我在本地完成,不把凭据贴进聊天。
4. 返回来源提交、实际安装路径、文件检查结果及尚未完成的运行环境配置,说明如何调用 procurement-optimizer。文件复制与应用发现分别检查,需要时新建会话。不要执行生产任务,也不要把安装完成说成已确认业务效果。以下为已核对版本未经改写的 SKILL.md。安装完整包才能保留引用的脚本、素材和指引。下方启动提示词为 EcomAgentTools 编写的示例。
---
name: procurement-optimizer
description: Use when running an annual SaaS audit, doing category-level spend review, or rationalizing the supplier base — when the user needs a spend audit, spend categorization (UNSPSC-aligned with Pareto breakdown and industry profiles), purchasing-cycle analysis (bottleneck categories per Goldratt's Theory of Constraints), or risk-balanced supplier consolidation that refuses single-source recommendations for tier-1 categories without a documented break-glass plan. Triggers on "spend audit", "SaaS audit", "spend categorization", "supplier rationalization", "supplier consolidation", "category strategy", "duplicate SaaS", "renewal cluster".
license: MIT
metadata:
version: 2.8.0
author: claude-code-skills
tags: [bizops, procurement, spend-categorization, supplier-consolidation, unspsc, saas-audit, purchasing-cycle]
compatible_tools: [claude-code, codex-cli, cursor, antigravity, opencode, gemini-cli]
---
# Procurement Optimizer — Spend Categorization + Supplier Rationalization
You are a Head of Procurement / Head of BizOps / VP Finance operator running the annual category review. Your job is **what to buy, from whom, on what cadence** — not how the vendor you already chose is performing (that's `vendor-management`). You categorize spend along a UNSPSC-aligned taxonomy, find the Pareto-20% of categories driving 80% of cost, surface purchasing-cycle bottlenecks, and produce a **risk-balanced** supplier-consolidation plan that refuses to collapse tier-1 categories to single-source without a documented contingency.
## Purpose
A typical mid-stage company has:
- Software spend up 40% YoY with no single owner who can name the top growth categories.
- 3 monitoring tools, 2 expense platforms, 4 email-marketing tools — duplicate-function clusters that nobody consolidated because no one had the data to defend the recommendation.
- A purchasing cycle where some categories close in 5 days and others take 90, but the "average" hides the constraint.
- Renewal dates clustered in the same month, destroying negotiation leverage.
This skill produces a deterministic, defensible artifact for each problem: categorized spend with Pareto, cycle-time scorecard by category, and a consolidation plan with explicit risk flags.
## When to use
- Annual SaaS audit and category-level spend review.
- A category owner wants to know which 5 categories drove this year's spend growth.
- Finance flags that software spend is up 40% YoY and needs a Pareto by category, not by vendor.
- BizOps suspects duplicate-function tools (monitoring, expense, email-marketing) and needs a defensible consolidation plan.
- The CFO wants tighter approval thresholds and needs cycle-time data per category to justify it.
- Post-acquisition, two procurement teams need to merge category taxonomies and dedupe the supplier base.
## When NOT to use
- Scoring or auditing an individual vendor you've already decided to keep paying → sibling `vendor-management`.
- Financial close, monthly reporting, or P&L analysis → `finance/financial-analysis`.
- Drafting or negotiating contract terms → `c-level-advisor/general-counsel-advisor`.
- Building outbound sales proposals → `business-growth/contract-and-proposal-writer`.
## Workflow
### Step 1 — Intake spend
Have the user fill out `assets/spend_intake_template.md` (20 minutes for a typical mid-stage company). The skeleton expects line items with `{supplier, description, category_hint, annual_spend, frequency, currency}`. If prior-year spend is available, include it for YoY analysis.
### Step 2 — Categorize and find the Pareto
Run `scripts/spend_categorizer.py --input spend.json --profile <profile> --output categorized.md`.
The categorizer maps each line item to a UNSPSC-aligned Class → Family → Segment (built-in map of ~30 categories tuned for tech-startup spend: Software/SaaS, Hardware, Cloud Infrastructure, Professional Services, Marketing Services, Legal, Recruiting, Travel, Office, Insurance, Benefits, etc. — NOT the full 100k UNSPSC database). Output includes:
- Categorized line items
- Pareto: which 20% of categories drive 80% of spend?
- Top-10 YoY growth categories (when prior-year provided)
Profiles re-prioritize the category map: `tech-startup` (heavy SaaS / cloud), `scaleup` (sales tools / recruiting heavy), `enterprise` (professional services / facilities heavy), `services`, `manufacturing`.
### Step 3 — Analyze the purchasing cycle
Run `scripts/purchasing_cycle_analyzer.py --input pos.json --output cycle.md`.
For each PO record `{category, request_date, approval_date, po_issued_date, goods_received_date, payment_date, approver_hops}`, the analyzer computes per-category:
- Cycle time T-request → T-PO (median, P90)
- T-PO → T-pay (median, P90)
- Approver-hop count (median)
It then flags categories with cycle time > 2× the cross-category median as **bottleneck** categories. This is Goldratt's Theory of Constraints applied to procurement: the system throughput is set by the slowest step, and the slowest step is almost always one specific category (legal review on services contracts, security review on tier-1 SaaS).
### Step 4 — Plan supplier consolidation with risk balancing
Run `scripts/supplier_consolidation.py --input suppliers.json --profile <profile> --output consolidation_plan.md`.
The planner identifies **duplicate-function clusters** (e.g., 3 monitoring tools, 2 expense platforms). For each cluster:
- Picks a recommended consolidation winner (highest criticality tier survives, OR lowest switching-cost winner if the cluster is tier-3, depending on cluster type).
- **Flags risk:** does NOT recommend collapse to single-source for any tier-1 criticality category unless the input explicitly flags a documented break-glass plan. The output says explicitly: "DO NOT CONSOLIDATE — tier-1 cluster, no break-glass on record. Add a 72-hour contingency plan first."
- Estimates savings: current cluster spend − winner spend − migration cost (sum of switching-cost estimates of losers).
- Renewal-date clustering analysis: flags categories where ≥ 3 contracts renew within the same calendar month (no leverage).
### Step 5 — Synthesize the procurement review
Combine the 3 artifacts into a BizOps-ready digest:
- Top 5 categories driving YoY spend growth (categorizer)
- Top 3 bottleneck categories blocking throughput (cycle analyzer)
- Top 5 consolidation opportunities with estimated savings and risk flags (consolidation planner)
- All renewal clusters destroying leverage
- Tier-1 single-source exposure points needing break-glass plans before any consolidation
## Scripts
| Script | Purpose |
|---|---|
| `scripts/spend_categorizer.py` | UNSPSC-aligned categorization + Pareto + YoY growth |
| `scripts/purchasing_cycle_analyzer.py` | Per-category cycle time + Goldratt bottleneck flag |
| `scripts/supplier_consolidation.py` | Duplicate-function clustering + risk-flagged consolidation plan |
All three accept `--input` (JSON), `--output` (markdown path), `--sample` (run with built-in sample data), and `--help`. The two with industry-specific category priorities accept `--profile {tech-startup,scaleup,enterprise,services,manufacturing}`.
## Quick example
```bash
# Emits a UNSPSC-aligned spend categorization with Pareto breakdown for the built-in sample spend file
cd business-operations/skills/procurement-optimizer && python3 scripts/spend_categorizer.py --sample
```
## References
- `references/spend_management_canon.md` — A.T. Kearney *Spend Management*, Procurement Leaders, Gartner Procurement, BCG Procurement value creation, Hackett benchmarks, Pierre Mitchell / Spend Matters, UNSPSC official taxonomy.
- `references/saas_management_canon.md` — Productiv / Zylo / Vendr / Tropic SaaS sprawl reports, BetterCloud SaaS Operations, Gartner SMP Magic Quadrant, Bain SaaS spend, Forrester SaaS portfolio management, Tomasz Tunguz on SaaS sprawl, Patrick Campbell / ProfitWell on SaaS unit economics.
- `references/procurement_anti_patterns.md` — A.T. Kearney maverick-spend, IACCM/WorldCC, McKinsey on category-strategy mistakes, Hackett purchasing-cycle research, BCG on supplier-consolidation risks, Spend Matters failed-rationalization analyses, ISM lessons learned.
## Assumptions
1. The user has access to AP / expense / SaaS-management exports, or can hand-assemble a spend list of the top 100-200 line items (the Pareto holds — top 20% of suppliers will be most of the spend).
2. Prior-year spend is preferred (for YoY) but optional; the categorizer degrades gracefully if absent.
3. Purchasing-cycle data is preferred but optional; if absent, the user gets categorization + consolidation only.
4. Supplier criticality (`tier-1/2/3`) is a **judgment call by the user**, not derived from spend alone. Tier-1 = revenue-blocking if the supplier disappears. The tool refuses to infer this — the user must mark it.
5. The output artifacts (categorized markdown, cycle scorecard, consolidation plan) are **inputs to a human decision**, not the decision itself.
## Anti-patterns
- **Consolidate to single-source for tier-1 critical category without a break-glass plan.** Cost savings buy nothing if the consolidated supplier disappears. See `references/procurement_anti_patterns.md`.
- **Categorize by vendor name, not by what's purchased.** Workday could be "HR Software" OR "Finance Software" depending on which modules are licensed. The line-item `description` and `category_hint` drive categorization, not the supplier name.
- **Ignore renewal-date clustering.** Twelve tier-2 contracts that all renew in March mean zero negotiation leverage on any of them. Spread them.
- **Approve-by-default for sub-$5K spend.** This is the death-by-a-thousand-SaaS pattern. The categorizer surfaces "small-spend, many-supplier" clusters explicitly.
- **No quarterly renewal review.** Annual is too coarse for SaaS, which renews continuously across the year.
- **Rationalize without measuring switching cost.** Consolidating 3 tools to save $50k when migration costs $200k is not a savings.
- **Consolidate based on price alone, ignoring integration debt.** The cheap tool that doesn't integrate with your data warehouse is more expensive than the expensive one that does.
- **Treat shadow IT spend as marketing's problem.** It is procurement's problem. Marketing-tool sprawl is the #1 driver of SaaS-spend growth in scaleups.
## Distinct from
- **Sibling `vendor-management`** — that's performance scoring (uptime, SLA, third-party risk) for vendors you've already decided to keep paying. This is **spend rationalization + supplier consolidation** — deciding WHICH vendors to keep.
- **`finance/financial-analysis`** — that's financial close, P&L, reporting, DCF. This is operational procurement: category strategy and supplier rationalization, not financial reporting.
- **`c-level-advisor/general-counsel-advisor`** — that's contract law (indemnity, IP, liquidated damages). This is category-level spend strategy. Once you've decided which 3 monitoring tools to consolidate to 1, GC reviews the contract terms of the survivor.
- **`business-growth/contract-and-proposal-writer`** — that's outbound proposals to win customers. This is inbound supplier rationalization.
- **`finance/budgeting`** — that's annual budget planning. This is the inside view: where the budget is actually leaking.
## Forcing-question library (Matt Pocock grill discipline)
Walked one at a time by `/cs-grill-bizops` or the BizOps orchestrator. Recommended answer + canon citation per question. Never bundled.
1. **"Before we categorize, do you have a UNSPSC-aligned taxonomy or are you categorizing by vendor name?"**
Recommended: categorize by what's purchased (line-item description + category_hint), not by supplier. A single supplier can span multiple categories.
Canon: UNSPSC official taxonomy documentation, A.T. Kearney *Spend Management* on category architecture.
2. **"Of your top 10 categories by spend, which 3 grew most YoY — and do you know why?"**
Recommended: name them before opening the tool. If you can't name them, that's the diagnosis.
Canon: BCG Procurement value-creation research, Hackett benchmarks on category-level visibility maturity.
3. **"For each duplicate-function cluster (e.g., 3 monitoring tools), what's the switching cost to consolidate — and does it exceed the savings?"**
Recommended: estimate switching cost explicitly (training, integration rework, data migration). Refuse to recommend consolidation without it.
Canon: BCG on supplier-consolidation risks, Spend Matters analyses of failed rationalization initiatives.
4. **"For any tier-1 category you're proposing to consolidate to single-source, what's the 72-hour break-glass plan if that supplier disappears?"**
Recommended: documented contingency per category, tested. If absent, do not consolidate.
Canon: NotPetya / M.E.Doc supply chain attack lessons, NIST SP 800-161, A.T. Kearney on supply concentration risk.
5. **"What % of your spend goes through a PO vs. expense reimbursement vs. shadow IT? Where's the maverick spend?"**
Recommended: measure it. A.T. Kearney research finds 10-40% of spend is maverick in unmonitored companies.
Canon: A.T. Kearney maverick-spend research, ISM (Institute for Supply Management) procurement maturity model.
6. **"How many of your top-20 contracts renew in the same calendar month? Do you have a renewal calendar?"**
Recommended: build the calendar; spread renewals deliberately. Clustered renewals destroy negotiation leverage.
Canon: IACCM/WorldCC contract-management research, Spend Matters on negotiation leverage timing.
7. **"What's your approval threshold for net-new SaaS purchases under $5k? Who owns the death-by-a-thousand-SaaS problem?"**
Recommended: a tightened threshold + a single owner. Productiv / Zylo data shows 50%+ of SaaS sprawl comes from sub-$5k unmonitored purchases.
Canon: Productiv / Zylo / Vendr industry reports on SaaS sprawl.
Walk depth-first. Lock 1-4 before opening 5-7. After all are answered, invoke `spend_categorizer.py` → `purchasing_cycle_analyzer.py` → `supplier_consolidation.py` in sequence.
以下是主要功能的用例提示词,可以直接复制使用。
查找重复软件支出类别 适用于:查找重复软件支出类别。请准备:支出明细、供应商记录、采购单日期、续约日期、关键程度和应急预案。
请使用已安装的 procurement-optimizer Skill。任务:查找重复软件支出类别。输入:[INPUT]。限制:[CONSTRAINTS]。先检查缺失信息,再输出可审查的结果、依据、假设和下一步。建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。[INPUT][CONSTRAINTS]定位采购审批周期延迟 适用于:定位采购审批周期延迟。请准备:支出明细、供应商记录、采购单日期、续约日期、关键程度和应急预案。
请使用已安装的 procurement-optimizer Skill。任务:定位采购审批周期延迟。输入:[INPUT]。限制:[CONSTRAINTS]。先检查缺失信息,再输出可审查的结果、依据、假设和下一步。建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。[INPUT][CONSTRAINTS]比较供应商整合收益与连续性风险 适用于:比较供应商整合收益与连续性风险。请准备:支出明细、供应商记录、采购单日期、续约日期、关键程度和应急预案。
请使用已安装的 procurement-optimizer Skill。任务:比较供应商整合收益与连续性风险。输入:[INPUT]。限制:[CONSTRAINTS]。先检查缺失信息,再输出可审查的结果、依据、假设和下一步。建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。[INPUT][CONSTRAINTS]输入 10 家虚构供应商的年度支出、采购周期、合同与迁移成本。商家希望减少重复工具,但不能为表面节省而失去关键备用服务。
案例输入资料:business-inputs.zip
Use the procurement-optimizer Skill.
Review our software and supplier spend before renewals. Categorize spend, compare growth, locate approval delays and evaluate consolidation choices. Calculate first-year net savings after migration and implementation costs, then recommend a renewal plan with dependencies, acceptance criteria and exit actions.
The attached business materials are:
- inputs/categorized.json
- inputs/consolidation.json
- inputs/cycle.json
- inputs/intake.md
Deliver a complete result.md report that the operations team can read, plus any finished files needed for this task. Keep supporting calculations and evidence with the deliverables. Write the report in English; use the requested target language for customer-facing copy. The business datasets are fictional examples unless the brief explicitly names a live public website.下方直接展示本次 Prompt 产生的主要文件,保留实际输出语言。
All business amounts, suppliers, dates and management statements are synthetic. USD annual spend compares 2026 with 2025; scope is indirect purchasing, excluding product materials and finished goods.
Prepare to consolidate email marketing onto HarborMail A, subject to the acceptance gates below. Exit HarborMail B and C before their March 2027 renewals only after those gates pass. This produces $18,000 recurring annual savings and $16,000 first-year net savings after $2,000 of combined migration and implementation costs. Annual recurring spend falls from $100,000 to $82,000; first-year spend including transition costs is $84,000. These are modeled savings for a full post-renewal year, not savings already achieved or a calendar-2027 forecast.
Keep both monitoring suppliers: do not consolidate tier-1 monitoring without documented contingency coverage. Retain HarborCompute while addressing its existing sole-source cloud exposure. Defer expense-platform consolidation because the modeled benefit is small. Renew legal and advertising subject to scope and budget review. Alex owns decisions, new SaaS approvals and quarterly renewal reviews; Mia owns migration training and support escalation to Alex.
HarborMail A is the operationally conservative survivor, preserving the most embedded platform and a tier-2 service. It is not the cheapest alternative: retaining C models $23,000 first-year net savings, $7,000 more than A. Alex should review that alternative before committing to A; select C only if it passes the same operational gates and its tier-3 designation is reconciled with the role currently served by tier-2 tools. The base plan below budgets A, with no assumed savings from the alternatives.
Total spend rose $31,000, from $69,000 to $100,000 (+44.9%). Classifications use the purchased service and category hint, checked against the Skill's simplified UNSPSC-aligned hierarchy; these are descriptive classes, not certified official commodity codes.
| Class | Family → Segment | 2025 | 2026 | Increase | YoY | Share of 2026 |
|---|---|---|---|---|---|---|
| Email Marketing Platform | MarTech → Marketing | $24,000 | $36,000 | $12,000 | 50% | 36% |
| AWS | Cloud Infrastructure → Information Technology | $10,000 | $15,000 | $5,000 | 50% | 15% |
| Outside Counsel | Legal → Professional Services | $5,000 | $10,000 | $5,000 | 100% | 10% |
| Expense / Spend Management | Software → Information Technology | $6,000 | $9,000 | $3,000 | 50% | 9% |
| Monitoring / Observability | Software → Information Technology | $12,000 | $15,000 | $3,000 | 25% | 15% |
| Paid Media | Advertising → Marketing | $12,000 | $15,000 | $3,000 | 25% | 15% |
Email contributes 38.7% of the total dollar increase; cloud and legal each contribute 16.1%. Together they explain 71.0% of growth. Management attributes these to duplicate email tools, increased cloud capacity and more contract reviews; these explanations are supplied assertions, not independently established causes. Expense, monitoring and paid media tie for the remaining growth positions; there is no unique fourth or fifth category. Legal leads percentage growth at 100%, while email leads dollar growth.
The portfolio does not exhibit an 80/20 spend split. The generated report selects one of six classes as its rounded-down “top 20%”: email covers 36% of spend. Email plus monitoring, cloud and paid media reach 81% across four of six categories. Concentrate savings work on email, but retain oversight of those other major categories.
Finance's supplied channel split implies $90,000 through POs, $10,000 through corporate cards and no reimbursements. Unapproved subscriptions equal $3,000, or 3% of total spend and 30% of card spend, already included in the $100,000. No transaction-level channel tags identify which suppliers make up that amount. Reconcile the card subscription list before claiming recoverable savings; do not add $3,000 to consolidation savings. Only HarborBooks B is individually below $5,000 ($3,000); this ledger does not establish a broad many-supplier small-spend cluster. Alex must check duplicate function and ownership for every net-new SaaS request, including those below $5,000.
Calendar days are used. Each category has two observations. P90 uses linear interpolation and is descriptive with such a small sample.
| Category | Request→approval median | Approval→PO median | Request→PO median / P90 | PO→payment median / P90 | Median hops | Decision |
|---|---|---|---|---|---|---|
| Outside Counsel | 29 | 1 | 30 / 34 | 30 / 30 | 4 | Bottleneck |
| AWS | 6 | 1 | 7 / 7.8 | 30 / 30 | 2 | Next longest; below threshold |
| Monitoring / Observability | 5 | 1 | 6 / 6.8 | 30 / 30 | 2 | Below threshold |
| Expense / Spend Management | 4 | 1 | 5 / 5.8 | 30 / 30 | 1 | Below threshold |
| Email Marketing Platform | 3 | 1 | 4 / 4.8 | 30 / 30 | 1 | Below threshold |
The median of category request-to-PO medians is 6 days. Only outside counsel exceeds the strict greater-than-12-day bottleneck threshold; there are not three demonstrated bottlenecks. Its approval stage takes 29 of 30 median days (96.7%), with four approval hops. The event dates locate the delay before approval but do not identify which approver or review queue caused it. Paid Media has no cycle records.
Apply the Theory of Constraints sequence to outside counsel first: Alex should capture queue owner, receipt and completion times for each approval, require a complete scope-and-budget intake, and run legal and budget reviews in parallel where permitted. Preserve necessary legal review. Proposed acceptance targets for the next five comparable requests are median request-to-PO ≤12 days, P90 ≤15 days, approval-to-PO ≤1 day, no skipped required reviews and no overdue renewal decision caused by approval routing. These are targets, not measured improvements. If missed, inspect the longest approval queue before changing other categories. The uniform 30-day PO-to-payment interval does not establish an AP bottleneck or late payments; contractual due dates are absent.
First-year net savings = current cluster annual spend − retained annual spend − one-time migration and implementation cost. The supplied switching estimates include training, data migration and integration changes. They are used as combined implementation costs, avoiding double counting. No separate setup fee, overlap cost, termination charge or revised capacity quote is supplied. Any additional cost or uplift reduces net savings dollar for dollar and must be priced before commitment.
| Cluster / survivor | Current | Retained annual | Gross annual savings | One-time cost | First-year net | Recommendation |
|---|---|---|---|---|---|---|
| Email / HarborMail A | $36,000 | $18,000 | $18,000 | $2,000 | $16,000 | Base plan, gated |
| Email / HarborMail B | $36,000 | $12,000 | $24,000 | $7,000 | $17,000 | Alternative; only $1,000 more net than A |
| Email / HarborMail C | $36,000 | $6,000 | $30,000 | $7,000 | $23,000 | Economic leader; conditional capacity and criticality review |
| Expense / HarborBooks A | $9,000 | $6,000 | $3,000 | $500 | $2,500 | Defer |
| Expense / HarborBooks B | $9,000 | $3,000 | $6,000 | $2,000 | $4,000 | Defer; higher disruption and still small benefit |
| Monitoring / HarborWatch A | $15,000 | $9,000 | $6,000 | $2,000 | $4,000 | Blocked; no contingency |
| Monitoring / HarborWatch B | $15,000 | $6,000 | $9,000 | $5,000 | $4,000 | Blocked; no contingency |
These are three duplicate-function opportunities, with seven survivor scenarios, not seven additive opportunities. There are no fourth or fifth supported clusters. Legal, cloud and advertising have one supplier each.
The Skill proposes A for email because it has eight integrations, compared with B's two and C's one. Keeping A requires moving three source-tool integrations; replacing it requires revalidating its eight integrations as well. Function substitution and unchanged survivor quotes are management assumptions. Switching estimates already include integration rework, so integration counts do not justify inventing an extra cost against B or C. The reason to prefer A is lower transition complexity and preserved criticality, with an explicit $7,000 opportunity cost against C. If Alex confirms C can support the consolidated service at the stated price and validates the $7,000 transition estimate, C becomes the preferred economic choice; its recurring portfolio spend would be $70,000 and first-year total $77,000. Do not execute the A and C plans together.
Under the A plan, email transition cost pays back in about 1.3 months of realized gross savings ($2,000 ÷ $18,000 × 12), ignoring cash timing. An additional $6,000 of implementation, overlap or annual price uplift reduces first-year net to $10,000; $16,000 of additional costs eliminates it. Proposed approval gate: preserve at least $10,000 net first-year savings and confirm a fully priced transition before canceling anything. A negative first-year result requires reapproval rather than being presented as savings.
Expense consolidation offers at most $4,000 net under the supplied scenarios. It remains below the Skill's stated $10,000 materiality threshold and lacks a confirmed functional-substitution statement. Revisit at the next quarterly review if administrative savings or risk reduction can be evidenced; none is monetized here. Monitoring's $4,000 is excluded from the base plan regardless of survivor.
HarborWatch A and B are both tier-1, with no documented break-glass plans. Keep both until coverage is documented for the entire cluster and a test demonstrates recovery within 72 hours. Two suppliers do not by themselves prove independent failover: validate coverage overlap, independent credentials and alert delivery. The generated plan's candidate offboard names do not authorize a monitoring cancellation.
HarborCompute is already a single tier-1 cloud supplier, with ten integrations and no contingency plan. It is not detected as a duplicate cluster. Renew for continuity while Alex assigns a technical recovery owner and documents a fallback; do not treat its $15,000 switching estimate as a funded alternative or a saving.
For monitoring and cloud, the required contingency record must name an authorized alternate service or recovery arrangement, accountable operator, access method, export/backup location, restoration priorities, recovery time and data-loss limits, fallback contractual access and activation cost. Proposed milestones: 0–4 hours declare and triage; 4–24 hours restore essential telemetry or workloads from a verified export/backup; 24–72 hours activate the alternate and validate critical alerts or order-related services. Demonstrate these steps in a witnessed test, record failures and retest. No current technical plan or completed drill is evidenced for these suppliers.
All 10 of 10 contracts, $100,000 of annual spend, renew March 1–10, 2027. Email alone also meets the category cluster rule: three contracts in March totaling $36,000. No other category has three renewals. This is the complete supplied ledger. The concentration creates workload and negotiation pressure; it does not prove that leverage is literally zero.
Notice periods, auto-renew terms, cancellation penalties and transfer rights are not supplied. Alex must read all ten contracts immediately and record the actual notice dates; any earlier contractual deadline overrides the planning dates below. No cancellation has been sent and no contract has been changed.
| Supplier | Renewal | Annual spend | Planned action |
|---|---|---|---|
| HarborMail A | Mar 1, 2027 | $18,000 | Renew as base survivor after quote and acceptance gates |
| HarborMail B | Mar 2, 2027 | $12,000 | Non-renew after accepted A migration and valid notice |
| HarborMail C | Mar 3, 2027 | $6,000 | Non-renew after accepted A migration and valid notice |
| HarborBooks A | Mar 4, 2027 | $6,000 | Renew; consolidation deferred |
| HarborBooks B | Mar 5, 2027 | $3,000 | Renew; consolidation deferred |
| HarborWatch A | Mar 6, 2027 | $9,000 | Retain continuity; no consolidation exit |
| HarborWatch B | Mar 7, 2027 | $6,000 | Retain continuity; no consolidation exit |
| HarborLegal | Mar 8, 2027 | $10,000 | Renew after scope, budget and approval-route review |
| HarborCompute | Mar 9, 2027 | $15,000 | Renew continuity; prioritize cloud contingency |
| HarborAds | Mar 10, 2027 | $15,000 | Renew after scope and budget review; no modeled cut |
| Timing / owner | Completed decision required | Acceptance / fallback |
|---|---|---|
| Immediately / Alex | Contract and card review; establish notice deadlines, named service owners and total transition quotes | All ten contracts have verified notice terms and decision owners; $3,000 unapproved amount reconciled to subscriptions without assuming all can be removed |
| By Dec 1, 2026, or earlier notice cutoff / Alex with Mia | Choose email survivor after comparing A, B and C; approve funding and implementation scope | Document capability parity, criticality suitability, capacity price, all integrations and ≥$10,000 modeled net; if no survivor passes, retain current service and seek a priced short extension |
| By Jan 15, 2027, or earlier notice cutoff / Mia, approved by Alex | Finish migration rehearsal, exports and training; obtain contingency coverage for proposed tier-1 changes | Email gates below pass; no tier-1 exit without cluster-wide documented plan and recovery test |
| Before earliest contractual non-renewal cutoff / Alex | Execute accepted email non-renewals; negotiate the remaining renewals | Written receipt of notices, confirmed service end dates and reviewed final invoices; if migration has failed, secure continuity terms before notice cutoff |
| At renewal and first invoice / Alex and finance reviewer | Verify survivor price, avoided invoices and one-time expenses | Reconcile actual costs to model, flag slippage, and confirm no duplicate renewal charge |
| Quarterly / Alex; training support from Mia | Review rolling 120-day renewal pipeline, tier-1/2 risk, new SaaS and card exceptions | Each due contract has a decision before its notice deadline; annually reassess tier-3 categories |
For email acceptance, Mia must reconcile exported and imported contact, suppression, unsubscribe and consent records with zero unexplained differences; verify active automations, templates, segments and retention settings; run test sends for marketing and any existing order notifications; and validate every documented integration with its owner. Alex must sign off on required workflows and capacity pricing, and Mia must complete operator training and retain a usable rollback export. No production cutover is evidenced by this review. If acceptance fails, stop the cutover, restore the prior configuration from the retained export and keep source service available under agreed terms; recalculate savings for the overlap or extension.
To reduce future concentration, ask for staggered terms without assuming vendor agreement or savings: target email in March 2028, cloud in June 2028, legal in September 2028 and advertising in December 2028, with expense and monitoring scheduled into other months and monitoring renewals separated. These targets may require 15-, 18- or 21-month terms from March 2027. Alex must compare total commitment, notice rights and annualized cost before acceptance; do not buy longer terms solely to spread dates. March 2027 obligations remain until amended in writing.
For each accepted email exit, Alex must obtain non-renewal acknowledgment, confirm the final service date and settle the final invoice. Mia must export and validate business records before deletion, preserve records subject to retention requirements, remove source-tool automations and integrations, revoke API tokens and user/SSO access, rotate shared credentials where relevant, and obtain deletion confirmation for data no longer required. Alex closes the supplier record only after confirming no active recurring charge. Retain rollback access until the accepted cutover is stable; deletion follows that decision, not the initial migration rehearsal.
Finance should verify the first survivor invoice and absence of B/C renewal charges, reconcile actual transition costs against $2,000 and report realized savings separately from modeled annual savings. If any cancellation misses its deadline, revise the first-year model for the actual avoidable period and extension cost; the full $16,000 cannot be claimed automatically.
The three supplied JSON datasets are preserved in evidence/. Management assumptions from intake are summarized above: scaleup profile, USD annual basis, stated growth explanations, email substitutability, unchanged survivor quotes, inclusive switching costs, channel shares and Alex/Mia ownership. No external market benchmark or supplier quote was used.
spend_categories.md, cycle_scorecard.md and consolidation_plan.md are the original Skill-generated analyses. Read their generic recommendations subject to this report's decisions: in particular, a candidate “Offboard” entry is not permission to cancel a blocked or deferred supplier.
category_calculations.csv, cycle_calculations.csv, consolidation_choices.csv, renewal_register.csv and summary.json provide inspectable calculations and renewal records. calculate.py regenerates the supporting calculations from the evidence snapshots. verification.md records input checks and consequential differences between the Skill's documented safeguards and its implementation; the stricter safeguards govern this plan.
The decision-changing gaps are unverified contract notice/exit terms, unpriced costs beyond the supplied inclusive estimates, survivor capacity and operational acceptance, and missing monitoring/cloud recovery plans. Customer-facing copy is not required for this internal procurement decision.
案例中的商家经营资料为模拟数据;涉及网站检查时,报告中的页面观察来自所列公开网址。
建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。
核对源码及随包文件:GitHub 6d2f02ea077e。本次为静态审查,不代表已完成安装运行或业务效果测试。
使用获授权输入,不把密钥贴入提示词。采用前检查面向客户的声明、计算、代码改动及任何拟议的外部操作。
归类采购支出、检查采购延迟,并提出考虑风险的供应商整合方案。三个 Python 工具分别处理品类经济、采购周期瓶颈和供应商集中度。
按实际 Agent 选择方式,安装完整包,不要只复制页面中的 SKILL.md。 支出明细、供应商记录、采购单日期、续约日期、关键程度和应急预案。 开启新 Agent 会话,明确要求使用 procurement-optimizer。先用小型样本尝试下方一个场景,并检查输出。
查找重复软件支出类别;定位采购审批周期延迟;比较供应商整合收益与连续性风险
建议来自所提供导出,不执行 ERP 回写或谈判,预计节省需验证。
核对源码及随包文件:GitHub 6d2f02ea077e。本次为静态审查,不代表已完成安装运行或业务效果测试。
核对源码及随包文件:GitHub 6d2f02ea077e。本次为静态审查,不代表已完成安装运行或业务效果测试。
暂无评论。