Use when the user wants to draft or queue new company manifests for this repo, either for one company or a confirmed batch from an index, sector, region, or arbitrary grouping. It maps draft company data onto the repo's CompanyManifest schema and stages queue entries with `bun run company:queue` instead of writing canonical manifests directly.
Use this skill for net-new company intake. The goal is to create valid CompanyManifest drafts and stage them in content/manifests/queue/, not to publish canonical manifests directly.
If the user only gives raw company names, tickers, or group phrases, route that request through bun run company:intake --mode=prepare instead of requiring a full manifest draft up front.
Before drafting anything, read these repo files:
src/lib/domain/content-types.ts for the CompanyManifest contractcontent/taxonomy/regions.jsoncontent/taxonomy/indices.jsoncontent/taxonomy/sectors.jsoncontent/taxonomy/industries.jsoncontent/taxonomy/technology-waves.jsoncontent/manifests/companies/*.jsonscripts/company-queue.ts and scripts/company-init.ts for the intake flowDo not invent taxonomy IDs. If the repo taxonomy does not support the requested company cleanly, surface that gap instead of guessing.
Use when the user names one company or ticker.
Collect or confirm:
Use when the user wants a set of companies from an index, sector, region, theme, or arbitrary grouping.
Workflow:
bun run company:intake --mode=prepare.--batch-id and --group-label.Do not queue ambiguous candidates without confirmation.
content/manifests/companies/ and content/manifests/queue/ first.CompanyManifest draft JSON first.bun run company:queue --manifest=....company:intake create content/manifests/unverified/<request-id>.json, resolve candidates, and queue only the manifests that validate cleanly.--already-researched=skip|refresh.--batch-id, --group-label, and --request-notes when useful.bun run company:pipeline --manifest=... --provider=auto instead of stopping after queueing.bun run company:intake --raw=... --mode=dry-run --provider=auto or --mode=publish when they explicitly asked for publication.bun run company:init --queued=<slug>.bun run sync:company --company=<slug> --mode=dry-run.After a company:intake --mode=prepare run, the normal inline follow-up is:
If the user already requested dry-run or publish in the original prompt, skip the later workflow prompt and honor the requested end state directly. If they did not specify what to do with already researched companies, ask that first.
content/manifests/companies/ from this skill.seedProductNames and seedSourceUrls as hints, not exhaustive research.