accept
無料Accept HQ membership invites from a magic link or raw token.
日本語の概要は準備中です。原文の説明を表示しています。
Scaffold a new HQ company, optionally through to operational: knowledge, workers, brand, integrations, access rules, and invites.
日本語の概要は準備中です。原文の説明を表示しています。
実行スコア 未検証
インストール方法を見るインストールする前に、エージェントに与えられる指示の中身を確認できます。
Create a new company. Phase 0 (scaffold) always runs and yields a working local company in seconds. Everything after Phase 0 is an optional, skippable, fail-soft guided path that takes the company from "empty folder" to "operational" — populated knowledge/workers/skills/projects, connected tools, an org model with streamlined ACL rules, invited teammates, and (optionally) cloud agents.
Args: $ARGUMENTS
AskUserQuestion per decision (policy
decision-queue-one-at-a-time). Offer a "skip"/"not now" choice on every optional phase.hq call is company-scoped with --company {slug}./designate-team, /newworker, /idea, /prd, hq groups, hq secrets,
hq files, hq members invite, cloud-agent provisioning). It adds the interview + the
tool-classification logic, nothing more.hq secrets generate-link) and render it ONLY as a Markdown inline link at mint time
(policies hq-share-session-urls-are-capabilities, hq-secure-link-render-as-markdown).If no args, ask: "Company slug (lowercase, hyphens only)?"
Validate: no spaces, lowercase only, hyphens allowed, doesn't already exist in companies/manifest.yaml.
Ask (batch is fine here — these are simple facts):
(Credentials are NOT collected here — Phase 4 handles them properly via minted links.)
# The default-off HQ flag keeps the existing local scaffold. When enabled, bootstrap
# the cloud company first, pull the shared seed, then render only machine-local paths.
HQ_CLI_BIN="$(command -v hq)" node core/scripts/newcompany-bootstrap.cjs "{slug}" "{Name}" "companies/{slug}" "$PWD"
# Obsidian preferences stay on this machine and are not part of the company seed.
[ -e companies/_template/.obsidian ] && cp -rL companies/_template/.obsidian "companies/{slug}/.obsidian"
The bootstrap prints exactly one mode line after it completes:
newcompany mode: cloud-first or newcompany mode: newcompany. Use that output
as the mode for the rest of this run; do not read the flag again. In cloud-first mode,
hq onboard create-company provisions the entity, bucket,
owner membership, verifies STS access, and writes .hq/config.json before the
shared company seed is pulled. The renderer then writes only newcompany_only
paths, so cloud-owned seed files are not overwritten.
The workspace/ directory is the per-company audit trail of HQ sessions that touch this
company. Sessions are hardlinked here from workspace/threads/ by the mirror hook
(mirror-thread-to-company.sh); index.jsonl is committed, individual session JSONs are gitignored.
company.yaml is the HQ Desktop App / cloud-state marker. Local mode preserves the
existing cloud: false scaffold. Cloud-first mode writes cloud: true after onboarding
has provisioned the company. The server seed never writes this per-machine file.
Scaffold companies/{slug}/knowledge/ as a plain real directory. Company
folders sync to every member's devices, so company knowledge must never contain
Git metadata and must never be a symlink into repos/.
mkdir -p companies/{slug}/knowledge/design-styles/packs
# Run this legacy README write only when the bootstrap did not report cloud-first.
cat > companies/{slug}/knowledge/README.md <<'EOF'
# {Name} Knowledge
Company reference material synced through the company vault.
EOF
When the bootstrap reports cloud-first, skip only the README write above because that shared file was pulled from the cloud. The local path continues to use the same README content as before.
Verify (must pass before continuing):
test -d companies/{slug}/knowledge && ! test -L companies/{slug}/knowledge \
&& echo "OK: knowledge is a plain real directory"
Keep this as a plain directory. Never initialize Git inside it, move it under
repos/, or replace it with a symlink.
The design-styles/packs/ subdir is where company-scoped brand packs live.
manifest.yaml: Add entry with ALL fields populated (no nulls):
{slug}:
prefix: {auto-computed}
github_org: {org or omit}
repos: [{repo paths or empty array}]
settings: [{setting names or empty array}]
knowledge: companies/{slug}/knowledge/ # plain directory, synced with the company
deploy: []
vercel_projects: []
qmd_collections: [{slug}]
Company workers are discovered automatically from
worker.company:inside eachcompanies/{slug}/workers/*/worker.yaml. Noworkers:array in the manifest —core/workers/registry.yamlis the regenerated index.
Compute prefix before writing the entry:
{slug}, lowercase, take first 3 chars (e.g. acme-corp → acm).python3 -c "import yaml; d=yaml.safe_load(open('companies/manifest.yaml')); print('\n'.join(v.get('prefix','') for v in d['companies'].values()))".-2, -3, ….qmd collection add companies/{slug}/knowledge --name {slug} --mask "**/*.md"
qmd update 2>/dev/null || true
companies/{slug}/company-details.md with the display name, GitHub org,
associated repos, and workers from Phase 0.2. The shared README.md is rendered
from the seed template and stays unchanged; Phase 1 records the business purpose
after discovery.## Companies line doesn't include the new slug, update it.Checkpoint — the company now works locally. Announce it, then offer the operational path: "Want me to set {Name} up the rest of the way — learn your business, seed knowledge, model your team, and connect your tools? (You can stop at any step.)" If they decline, jump to Phase 9 (finish + report).
The interview that drives every downstream phase. One question at a time
(AskUserQuestion), pattern adapted from /personal-interview. Keep it tight (~6–8 Qs);
take a position on vague answers, don't flatter.
Ask, in order:
Write the results (so downstream phases + future sessions can use them):
companies/{slug}/knowledge/company-info.md — frontmatter (type: overview,
domain: [operations], status: canonical, tags: [company-info, {slug}],
generated_at: <ISO>, source: newcompany) + the business description, functions,
priorities. Follow core/knowledge/public/hq-core/knowledge-taxonomy.md.companies/{slug}/data/business-model.json — machine-readable:
{ domain, functions:[{name, sourceOfTruthTool}], priorities:[], team:[{name,email,role,group}] }.
Phases 2–7 read this.Skip → company stays scaffold-only; later phases that need this prompt for it inline.
From Phase 1, populate the folder so it isn't empty:
knowledge/market/competitive-landscape.md, knowledge/operations/workflows.md,
knowledge/<function>/overview.md from the interview — each with standard frontmatter.
Keep seeds short and clearly marked status: draft where synthesized./idea shape
(append to companies/{slug}/board.json, id {prefix}-proj-{NNN}, status: idea).
Offer to /prd the top one into a full PRD (skippable — that's a heavier flow).Skip → leave knowledge/projects empty (still valid).
Turn the company's existing brand into one or more design packs so every downstream
surface (deploy reports, landing pages, decks, project summaries, worker-generated UI)
ships on-brand from day one. Governing policies: hq-company-brand-pack-location,
hq-bind-company-brand-pack-as-deploy-default, hq-worker-dynamic-context-company-packs.
Ask (AskUserQuestion): "Where's the best source to learn {Name}'s brand from?"
companies/{slug}/data/imports/);
read via the pdf skill and extract the codified system.design.md / tokens / component library and
extract from source.status: draft.If the source is only partially readable (e.g. Drive link without access), fail soft: extract what you can, record the gap as a finish-later task. Never block the phase.
Default is one brand pack ({slug}-brand). Offer more only when the interview or
source reveals genuinely distinct visual systems (e.g. separate product brands, or a
"marketing" vs "internal docs" split). One pack per distinct system, each with its own id.
Create companies/{slug}/knowledge/design-styles/packs/{pack-id}/ with the five required
files (schema: core/knowledge/public/design-styles/PACK-SCHEMA.md; reference example:
any existing pack under companies/{co}/knowledge/design-styles/packs/):
pack.yaml — type: brand, scope implied company; fill aesthetic, origin
(cite the source used), contents, compatibility, context_paths (required:
implementation.md, design-tokens.css).style-guide.md — the visual reference: palette with hex values, type roles, spacing,
imagery/voice notes extracted from the source.implementation.md — code-level system: component patterns, layout rules, do/don't.design-tokens.css — CSS custom properties.design-tokens.json — same tokens in DTCG format.NEVER place company packs under knowledge/public/design-styles/packs/ — that's shared
packs only.
Registry entry fields: type: brand, status: active, scope: company,
company: {slug}, path: companies/{slug}/knowledge/design-styles/packs/{pack-id}/,
plus the one-line aesthetic. Consumers reference packs by id only — the
registry resolves the path.
Where to write it depends on the layout: if core/knowledge/public/design-styles
is a real HQ-tracked directory (! test -L), add the entry to its
registry.yaml. If it is a package contribution mounted from core/packages/
(installed via hq install @indigoai-us/hq-pack-design-styles), that content is
immutable — never edit through the mount. Write the entry to the company scope
instead: companies/{slug}/knowledge/design-styles/registry.yaml (create it if
missing); company brand packs under companies/{slug}/knowledge/design-styles/packs/
auto-load when the company is bound, and resolution merges company entries over
the shared registry.
Ask which surfaces should default to the pack (multi-select; pre-select deploy):
companies/{slug}/policies/{slug}-deploy-report-brand-pack.md
binding the pack path as the /deploy default (pattern:
hq-bind-company-brand-pack-as-deploy-default). The global
Midnight Editorial default already cedes to a bound company pack — no core edits.design.md with style-pack: {pack-id}./project-summary and deck
artifacts use the pack.One policy file per pack-binding decision, company-scoped, standard policy frontmatter
(scope: company, enforcement: hard, when: deploy || design).
Skip → no packs; deploy artifacts fall back to HQ Midnight Editorial.
Cluster the functions/workflows from Phase 1 into proposed workers, reusing the
import-context cluster pattern + /newworker:
AskUserQuestion — create / edit / skip each./newworker with pre-filled fields (name,
worker.company: {slug}, candidate skills, knowledge paths, description). It writes
companies/{slug}/workers/{name}/worker.yaml; core/workers/registry.yaml
regenerates automatically on reindex./create-skill for each accepted
skill. That flow reserves its immutable ID before authoring, writes the canonical
companies/{slug}/skills/{name}/SKILL.md, and lets reindex surface the generated
namespaced runtime wrapper. Do NOT write a wrapper yourself.dynamic context entry pointing to
companies/{slug}/knowledge/design-styles/packs/ in its worker.yaml — without it the
registry resolves the pack but the worker can't load it (policy
hq-worker-dynamic-context-company-packs).Skip → no workers/skills synthesized.
If Phase 0 printed newcompany mode: cloud-first, skip this phase's prompt and
do not run /designate-team or hq cloud provision company {slug}. The company
and vault already exist, and hq files get already pulled the shared company
folder. Continue directly to Phase 5. Do not repeat the company-wide @all
folder grants described in Phase 6. Phase 6 may still add group-specific grants
the user selects; those do not replace or repeat the existing baseline.
Only when Phase 0 printed newcompany mode: newcompany, ask:
Shared secrets, group ACLs, invites, and cloud agents require a provisioned vault. Ask once:
"Set {Name} up for your team now? This provisions a cloud vault so you can connect tools, share access by group, invite teammates, and add AI agents."
/designate-team {slug} inline (writes cloud: true, runs
hq cloud provision company {slug}, self-checks GET /membership/me). Gate Phases 5–8
on exit 0. On failure, report and continue to Phase 9 (don't loop)./designate-team {slug} later to enable team
features" in the finish checklist.For each function's source-of-truth tool from Phase 1, classify the connection method and route accordingly — do NOT assume any specific tool list:
| Class | Signal | Action |
|---|---|---|
| Personal API key | user-scoped token (Notion personal key, GitHub PAT, Slack user token) | Mint hq secrets generate-link <TOOL>/<KEY> --company {slug} → present Markdown link + 1-line "how to get the key" instructions. |
| Org / admin API key | workspace/admin token (Google Workspace, Slack bot, Stripe restricted key) | Same minted link, but flag "needs an admin of {tool}" and who to ask. |
| Manual export | no usable API for their plan (some CRMs, spreadsheets) | Give export instructions + the drop path (companies/{slug}/data/imports/); record a finish-later task. |
| Ingestion script / process | recurring/custom pull needed | Create a board idea ({prefix}-proj-NNN, label ingestion) so it's tracked as real work; do not fake it. |
Process: for each tool, ask "how do you connect this?" with the four classes as options (pre-fill the likely class). Mint links for the API-key classes; write instructions/tasks for the others. Every tool is skippable.
Link rules (hard): show each minted URL only at mint time, as [Connect {Tool} ›](url).
Never persist it to disk, journal, board, or git.
Turn the team/functions into groups with streamlined, rule-based access — not one-off grants.
hq groups create grp_<name> --name "<Human>" --company {slug}
(ids must match grp_*).hq files share '<function>/*' --with grp_<function> --permission read --company {slug} (the /* shared glob; a bare <function>/ is a private create-only folder)hq secrets share <FUNCTION>/<FULL/PATH> --with grp_<function> --permission read --company {slug}
(full key path required — policy hq-secrets-share-needs-full-key-path)./designate-team (Phase 4): @all write
on knowledge/*, projects/*, policies/*, skills/* as four separate shared-folder
prefix grants. A trailing slash without * is the private create-only pattern.
Do not repeat it here and never widen it to a bucket-wide *. To keep part of a
folder private, run /team-access {slug} — it narrows the baseline to chosen
subfolders, granting the new paths before it removes the broad one./* shared-folder glob covers its whole subtree; a trailing slash is a private
create-only folder whose first uploaded child is locked to its creator. reports/*
and reports/ are mutually exclusive patterns, not equivalent grants. Keep
sensitive material out of the four baseline folders or move it under a group-scoped
prefix.Skip → no groups/rules (owner still has full access).
For each teammate from Phase 1 (or ask): email + role + group.
hq members --company {slug} invite <email> --role <admin|member> (owner is provisioning-only; not via CLI).hq groups add grp_<name> <email> --company {slug}./accept on first sign-in. Surface pending vs joined state.Skip → invite later.
Team Agents are GA (hq-pro vault-service). Offer: "Want to add an AI teammate (agent) that lives in the cloud and can work in Slack/email?"
hq cloud provision company {slug} must have
run in Phase 4; then the agent provisioning endpoints POST /agents, status via
GET /agents/{uid}/status). Prefer any hq CLI agent subcommand if present; otherwise
follow the cloud-agents provisioning path. Route agent/vault work to the vault-service backend.Agent tag;
assignable in ACL pickers). Guardrail: agents cannot hold owner/admin in v1.Skip → no agents (the most likely default; it's a deliberate step).
"There's a file on your computer, with a company folder and a personal folder. It stores your business context — and that's what HQ works from."
qmd update 2>/dev/null || true{Name} is ready ✓
Directory: companies/{slug}/ (prefix: {prefix})
Cloud: {provisioned | local-only — run /designate-team {slug} to enable team features}
Knowledge: {N seeded docs | empty}
Design packs: {pack ids + bound surfaces | none — deploy falls back to HQ Midnight Editorial}
Workers/Skills: {list | none}
Projects: {N ideas on the board | none}
Integrations: {connected list | none} · Finish later: {classified manual/script items}
Team: {N invited} · Groups: {list} · Agents: {N | none}
null). The company knowledge directory is mandatory.company.yaml with cloud: false; only /designate-team flips it. Never default to cloud: true.hq call carries --company {slug}. Never collect raw secrets in chat — mint links.companies/{slug}/knowledge/design-styles/packs/, not the shared public packs directory. Register them per §2.5.4: use the shared registry when it is a real HQ-tracked file, or a company-scoped registry.yaml when design-styles is an immutable package mount. Bind packs to surfaces through company-scoped policies. Do not symlink them into repos/ or edit core deploy infrastructure./designate-team, /newworker, /idea, /prd, hq groups|secrets|files|members invite, and the cloud-agent provisioning path — don't reimplement them./onboard — provision the vault for it/designate-team — turn on cloud/team syncまだレビューはありません。使ってみた感想をお寄せください。
ログインなしで書き込めます。使ってみた感想、質問、動かなかった環境などを気軽にどうぞ。
まだコメントはありません。最初のコメントを書いてみませんか。
Accept HQ membership invites from a magic link or raw token.
日本語の概要は準備中です。原文の説明を表示しています。
Capture qualifying architecture decisions as ADRs in the right HQ or repo location.
日本語の概要は準備中です。原文の説明を表示しています。
Browser automation CLI for AI agents. Use when the user needs to interact with websites, including navigating pages, filling forms, clicking buttons, taking screenshots, extracting data, testing web apps, or automating any browser task. Triggers include requests to "open a website", "fill out a form", "click a button", "take a screenshot", "scrape data from a page", "test this web app", "login to a site", "automate browser actions", or any task requiring programmatic web interaction.
日本語の概要は準備中です。原文の説明を表示しています。
Find shallow modules and propose deepening refactors, ranked with file refs; never edits code. Use when code is hard to change or planning a refactor.
日本語の概要は準備中です。原文の説明を表示しています。
Generate dark ASCII banner graphics for HQ and social launch assets.
日本語の概要は準備中です。原文の説明を表示しています。
Compare approaches to best-in-class prior art, merge existing work, verify cruft removal, and recommend the most durable design before PRD work.
日本語の概要は準備中です。原文の説明を表示しています。