Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add hajibabaie/combinatorial-optimization-skills --skill column-generationgit clone --depth 1 https://github.com/hajibabaie/combinatorial-optimization-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/hajibabaie/combinatorial-optimization-skills/column-generation)<a href="https://agentmods.dev/skills/hajibabaie/combinatorial-optimization-skills/column-generation"><img src="https://agentmods.dev/badge/skills/hajibabaie/combinatorial-optimization-skills/column-generation.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00124 | $0.11844 |
| Opus 5 | $0.00062 | $0.05922 |
| Sonnet 5 | $0.00025 | $0.02369 |
| Haiku 4.5 | $0.00012 | $0.01184 |
Grade A, and why
column-generation scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 8d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
How it starts
The opening of the file, as written. The whole thing — 734 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Column Generation
You are an expert in column generation and branch-and-price for large-scale linear and integer programming. This skill covers the restricted master / pricing loop, reduced-cost pricing oracles, convergence and dual bounds, stabilization, heuristic pricing, and branching rules that remain compatible with the pricing problem. Use the framework below to recognize when a problem calls for column generation, implement the loop correctly in gurobipy, and extend it to a full branch-and-price algorithm when the LP bound alone is not enough.
Initial Assessment
Establish the following before writing any code:
- Why are there too many variables? Identify the combinatorial object a column represents: a cutting pattern, a vehicle route, a crew pairing, a machine schedule, a cluster. If columns cannot be described implicitly by a structured subproblem, column generation does not apply.
- What is the master structure? Set covering (
>=), set partitioning (==), or a general linking system? Covering masters give nonnegative duals and more freedom in pricing; partitioning masters are needed when over-coverage is costed or infeasible. - What is the pricing problem and how hard is it? Knapsack (pseudo-polynomial DP), shortest path with resources (labeling), matching, or an NP-hard problem you will solve as a small MIP? Pricing consumes 80-95% of runtime in mature codes; its complexity decides instance reach.
- LP bound or integer solutions? Decide up front: column generation alone gives the master LP bound plus a heuristic integer solution (price-and-branch). Proven integer optimality requires branch-and-price, which roughly triples implementation effort.
- Problem size. Number of master rows (items, customers, tasks), expected number of CG iterations (often 1-5x the row count), and pricing instance size. A 1,000-customer routing master with exact elementary pricing is a research project; a 200-item cutting-stock LP solves in seconds.
- Solver availability. Gurobi or another LP solver with reliable dual values for the master; the pricing solver can be custom code. For true branch-and-price with column generation at every node, check whether SCIP's pricer interface or a framework (Coluna.jl, VRPSolver) saves you from writing tree management yourself.
- Dual stability risk. Degenerate masters (set partitioning with many ties, identical items) cause oscillating duals and slow convergence. Plan for stabilization if the row count exceeds a few hundred or the master is highly degenerate.
- Time budget and accuracy. Is a bound within 0.5% in minutes acceptable (stop early via Lagrangian/Farley bounds), or do you need exact LP convergence?
- Data format. Confirm the instance source (OR-Library cutting stock, Solomon/CVRPLIB routing, custom) and the units of costs and capacities; reduced-cost tolerances must match the cost scale.
- Validation plan. On small instances, the CG master LP value must match the LP relaxation of the equivalent Dantzig-Wolfe reformulation, and branch-and-price must match a compact MIP solved directly. Build that cross-check first.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 8d ago First seen · 734 lines · 124 tokens per session scan A 6d1267bb8bbb
column-generation is a skill published in the GitHub repository hajibabaie/combinatorial-optimization-skills (7 stars, last pushed 2mo ago), licensed MIT. It adds 124 tokens to every session and 11,844 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
Other skills, from other repositories
phx-deps-audit
Audit Hex deps for supply-chain security risk — bidi chars, compile-time exec, maintainer changes, typosquats, CVEs. Use after mix deps.update, when checking if a package upgrade is safe, or reviewing mix.lock PR diffs.
release
CONTRIBUTOR TOOL - Cut a plugin release: bump plugin.json version, finalize CHANGELOG, update README if needed, gate on make ci, commit, tag vX.Y.Z, and create the GitHub release. Use when shipping a new plugin version. NOT distributed.
session-deep-dive
Deep qualitative analysis of high-signal sessions. Spawns subagents with v2 template, synthesizes patterns, compares against known findings. Use after /session-scan.
catchup
Summarize and review what changed while you were away. Use after a weekend, vacation, or flight to check missed PRs, git commits, Linear tickets, and meetings — one prioritized brief, not a firehose.
brainstorm
Brainstorm Elixir/Phoenix features — explore ideas, compare approaches, gather requirements. Use when vague idea, not sure how to approach, or want to discuss before plan.
learn-from-fix
Capture Elixir/Ecto/LiveView lessons and Hex API rules. Use after corrections or when asked to document learning, record a lesson, prevent a fixed mistake, or remember package guidance with --library.