brand
無料Apply this site's visual identity — colours, type, logo files and fixed brand strings. Use for any page, component, social asset or document that should look like the site.
日本語の概要は準備中です。原文の説明を表示しています。
Use when building, testing or previewing site-os — the BUILD_TARGET=stable dist directory, the four verification gates (build, test, env:check, brand:check), the preview servers on :3000 and :3100, and the failure modes that look like bugs but are not.
インストールする前に、エージェントに与えられる指示の中身を確認できます。
BUILD_TARGET=stable pnpm build # production build
pnpm test # vitest
pnpm env:check # every process.env var has a declared home
pnpm brand:check # brand assets, scales, no retired hexes
tsc --noEmit alone is not enough: it cannot see inside a SQL string or a
Tailwind class name, and both have produced runtime failures here that compiled
cleanly.
BUILD_TARGET=stable writes to .next-stablenext.config.mjs sets distDir from it. Use the same value for build and
start, or pnpm start serves a stale or missing directory:
BUILD_TARGET=stable pnpm build
BUILD_TARGET=stable PORT=3100 pnpm start
Rebuilding into .next-stable while a server is serving from it invalidates the
chunk hashes its manifest holds, and every page starts throwing. It looks like a
code bug; it is not. Restart the server after a rebuild:
pkill -f "next start"; sleep 2
BUILD_TARGET=stable PORT=3100 pnpm start > /tmp/vb-preview.log 2>&1 &
| Port | Serves |
|---|---|
| 3000 | ~/projects/site-os — main |
| 3100 | ~/projects/site-os-brand-v4 — the brand-v4 worktree |
Both bind to all interfaces, so no tunnel: localhost, Tailscale
100.88.18.114, or LAN 192.168.0.11. Admin routes 307 to /login — that is
correct, not a failure.
The Coolify tunnel (scripts/coolify-tunnel.sh, port 8000) is unrelated; it
reaches the Coolify dashboard and API, which are loopback-only on the server.
A page compiling proves nothing about what it renders. curl it:
curl -s http://localhost:3100/services | grep -oiE "lead generation|demand gen"
For anything visual, say plainly that it was not seen if no browser was opened. Structural checks are not the same as looking at it.
Tailwind v3 cannot apply an alpha modifier (bg-saffron-500/10) to a var()
holding a full hex, which is why the saffron and green scales in
tailwind.config.ts must stay hex literals. brand:check asserts they still
match tokens.css.
To prove a class emits real CSS, grep the built stylesheet — there are several, and the main one is the largest:
grep -o "\.rounded-ui-md{[^}]*}" .next-stable/static/css/*.css
Branch brand-v4. No push, no merge, no deploy without being asked.
Before committing, check no secret is staged:
git status --porcelain | grep -E '\.env\.local|\.secrets/' # must be empty
git grep -l '<any token value>' # must be 0 files
.env.local and .secrets/ are gitignored (.gitignore:36 and :44).
[[site-database]] — migrations and the ownership rule.[[brand]] — what brand:check is enforcing.docs/OPS.md §3 — which store holds which environment value.まだレビューはありません。使ってみた感想をお寄せください。
概要と使いどころ
Apply this site's visual identity — colours, type, logo files and fixed brand strings. Use for any page, component, social asset or document that should look like the site.
日本語の概要は準備中です。原文の説明を表示しています。
Use FIRST when someone asks for a new feature or a change to an existing one — before any schema, code or test. Works out what is actually being asked for, whether to build it or integrate a third party (Trustpilot, Stripe, Calendly and the like), where the data lives, who may do what, and what happens when the vendor is down. Produces a decision, then hands to feature-schema.
日本語の概要は準備中です。原文の説明を表示しています。
Use when a new feature needs a table, column or capability — evolving the schema so the new thing joins the permission, audit and RLS contract instead of sitting outside it. Covers the DDL/DML split, the resource/capability wiring, and the self-verifying migration.
日本語の概要は準備中です。原文の説明を表示しています。
Use after building a feature — explore it in a real browser to find what nobody predicted, then turn each finding into a deterministic test that guards it forever. Covers the agentic pass, what to generate vs hand-write, and how to skip honestly when a capability is missing.
日本語の概要は準備中です。原文の説明を表示しています。
Publishing content or deploying site-os — what caches exist, what refreshes them, and how to prove a change is actually live. Use when publishing a post or product, launching a page, deploying, or when someone says a change "isn't showing".
日本語の概要は準備中です。原文の説明を表示しています。
Handling secrets, keys and credentials for site-os — reading vigyan-secrets.md safely, moving keys into app_secrets, rotating, and responding to an exposure. Use whenever a task touches a key, token, password, .env file, app_secrets, encryption, or the secrets document.
日本語の概要は準備中です。原文の説明を表示しています。