Key Finding
The single biggest unlock is a credential vault. Nyx's orchestration, cost guardrails, model routing, and worker fan-out already exist. What separates "writes a plan" from "ships a business" is authenticated access to the outside world — every pillar below is blocked or unblocked by exactly one thing: whether Nyx holds a working credential for the service involved, with the dangerous ones gated behind human approval.
Pillar 0: The Credential Vault
A single encrypted store the moderator reads at runtime, one entry per service, each tagged autonomous or human-gated.
| Credential | Tag | Why |
|---|---|---|
| Cloudflare API token + registrar | autonomous | Deploys, DNS, domains are reversible |
| Postiz channel tokens | autonomous | Posting is low-risk, rate-limited |
| Transactional email (Resend/Postmark) | autonomous | Needed for signup flows |
| Google Search Console | autonomous | Read-mostly, feeds the SEO loop |
| Stripe / Whop | human-gated | Legal entity, payouts, refunds |
| Google / Meta / Reddit Ads OAuth | human-gated | KYC, real spend, account-ban risk |
- Never log a credential value. Vault entries surface as env vars to workers, scoped per task.
- Human-gated entries require an explicit approval in Discord before first use in any session.
- Every credential gets a quarterly rotation reminder via the existing launchd scheduler.
Pillar 1: Organic Content Engine fastest win
The Postiz MCP is already installed. This pillar is mostly wiring, not building.
- A
content-workerrole in the moderator: takes a topic queue, drafts platform-native posts (X, LinkedIn, Reddit where rules allow), schedules through Postiz. - Topic queue seeded from the product's wedge and refreshed weekly by a research pass.
- Cadence caps per channel (for example 1/day X, 3/week LinkedIn) enforced in code, not in the prompt.
- Every published URL is logged so the nightly metrics sweep can track impressions over time.
Checkpoint: seven consecutive days of scheduled posts with zero human touches.
Pillar 2: One-Command Deploy ("ship")
A nyx ship command the moderator can call as a tool:
- Build the target app (detect framework, run its build).
wrangler pages deployorwrangler deployagainst the project, creating it if missing.- Bind domain + DNS through the Cloudflare API when a domain is assigned.
- Post-deploy health check hits the live URL; failure triggers automatic rollback (
wrangler rollback) and a Discord alert. - Deploy events append to the same ledger the cost guardrails use, so spend and ship history live in one place.
Checkpoint: Nyx takes a repo from commit to live URL with no human steps, and a forced-failure test triggers rollback plus alert.
Pillar 3: Programmatic SEO + Search Console Loop
- Site scaffolds always include the technical baseline: sitemap.xml, robots.txt, canonical tags, OG tags, schema.org types per page template.
- Keyword set (15-25 terms) lives in the project spec; each maps to a page template.
- Where a dataset supports it, generate templated pages (programmatic SEO) at build time.
- Weekly job pulls Search Console: impressions, clicks, position per page. Pages that gain traction get expanded; dead pages get reworked or pruned.
- Results feed the content engine's topic queue, closing the loop between SEO data and organic posts.
Checkpoint: first Search Console data flowing into the nightly sweep within 14 days of a site going live.
Pillar 4: Paid Ads last, and guarded
Highest leverage, highest risk. Built only after pillars 1-3 are stable.
- Ad-spend guardrail modeled directly on
cost-guardrails.ts: daily cap per platform, hard stop at the cap, ledgered spend. - Kill/scale rules in code: pause any ad set whose CAC exceeds the threshold after N conversions; scale budget 20% on any set beating target CAC for 3 days.
- Account creation, payment methods, and KYC stay human-only. Nyx operates inside accounts the operator created.
- Creative generation is autonomous (headlines, primary text, angles from the wedge), but the first campaign launch on each platform is approval-gated.
Checkpoint: one platform running with the guardrail proven by a synthetic cap test before any real budget increase.
Pillar 5: Business Creator Tab new · refining
New desktop-app tab. Status: concept approved 2026-06-09, operator will refine details later.
- Idea in. Operator types a business or product idea into a single input.
- Recon out. Nyx runs product and business research: market shape, 5-8 real competitors with actual pricing, and the wedges available. Reuses the /pm (Plan Max) workflow steps 2-4 on Fable 5 and renders results through the deep-research HTML pipeline, so competitor tables arrive with charts and stat cards.
- Refine loop. The plan is a conversation, not a static report. The operator pushes back (app vs website, pricing, scope) and the plan updates live.
- Done = project. On confirmation, Nyx creates a pre-initialized project: repo scaffold, the
docs/poc/PM-<slug>.mdspec it executes overnight, deploy config for pillar 2, and marketing plus SEO checklists pre-filled from the recon.
Open questions for refinement
- Should "create project" also register the domain and run the first deploy, or stop at scaffold plus spec for approval?
- Does the refine loop persist across sessions (a saved draft per idea)?
- One project per idea, or versioned plans under one project?
- Where does the tab live relative to Deep Research: sibling tab, or does it embed the research view?
Cross-Cutting: Metrics + Approval Gate
Nightly metrics sweep. One scheduled job collects: deploys and health, Postiz post performance, Search Console deltas, ad spend vs cap, cost-guardrail ledger. Output is a single morning Discord brief: what shipped, what it cost, what grew, what needs a decision.
Approval gate. Irreversible or spend-increasing actions always pause for a human: ad budget raises, mass publishing (more than the cadence cap), production deploys of payment-touching code, anything using a human-gated credential for the first time.
Sequencing
| Order | Work | Depends on |
|---|---|---|
| 1 | Credential vault (autonomous tier) | nothing |
| 2 | Postiz content engine | vault |
| 3 | nyx ship deploy command | Cloudflare token |
| 4 | Nightly sweep + Discord brief | pillars 1-2 |
| 5 | SEO baseline in scaffolds + Search Console loop | ship command |
| 6 | Business Creator tab | operator refinement |
| 7 | Ad-spend guardrail, then first guarded campaign | vault human-gated tier, operator KYC |
Pillars 1-3 can be built in parallel by separate Nyx workers; 4 onward layer on top.
Non-Goals
- Nyx never creates payment or ad accounts, signs legal documents, or completes KYC.
- No customer-facing copy frames the product as open source or references GitHub. Customers see "free version" or "Community Edition."
- No spend without a coded cap and a ledger entry.