RuleStack

Configs

Stacks

Compare

Diff

RuleStack

Configs

Stacks

Compare

Diff

Read API

RuleStack

Configs

Stacks

Compare

Diff

Read API

Configs/AGENTS.md/code-yeongyu/oh-my-openagent

AGENTS.md

packages/web/AGENTS.md
AGENTS.md

Quality

100/100

Scores the file, not the repository.

Length

577 words

10 headings · 2 code blocks

Repository

67k

— · pushed 0 days ago

Last changed

2 days ago

First indexed 2 days ago.
code-yeongyu/oh-my-openagent/packages/web/AGENTS.mdRawGitHub
1# packages/web/ — Marketing Site (Next.js + Cloudflare Workers)
2 
3**Generated:** 2026-05-20
4 
5## OVERVIEW
6 
7Public-facing marketing site for oh-my-opencode / oh-my-openagent. Next.js 15 (App Router) deployed to Cloudflare Workers via [@opennextjs/cloudflare](https://opennext.js.org/cloudflare). Independent of the npm plugin — its own `package.json`, `bun.lock`, and `tsconfig.json`.
8 
9## STACK
10 
11| Layer | Choice |
12| -------------- | ----------------------------------------------------------------------------------- |
13| Framework | Next.js 15.5 (App Router, RSC) |
14| Runtime target | Cloudflare Workers (`compatibility_flags: ["nodejs_compat"]`) |
15| Adapter | `@opennextjs/cloudflare` (build → `.open-next/worker.js`) |
16| Styling | Tailwind v4 (`@tailwindcss/postcss`) + shadcn/ui (`components.json`) |
17| i18n | `next-intl` with `app/[locale]/...` routing; 4 locales (en/ja/ko/zh) in `messages/` |
18| Animation | `motion` (Framer Motion v12) |
19| E2E | Playwright (`e2e/*.spec.ts`) |
20| Lint/Format | ESLint flat config + Prettier (Tailwind plugin) |
21 
22## STRUCTURE
23 
24```
25packages/web/
26├── app/[locale]/ # localized routes (App Router)
27├── components/ # shared UI primitives + shadcn-generated
28├── lib/ # utility helpers (cn, etc.)
29├── messages/{en,ja,ko,zh}.json # i18n strings
30├── i18n/ # next-intl request/routing config
31├── middleware.ts # next-intl middleware
32├── public/ # static assets (largest dir, ~4 MB)
33├── e2e/ # Playwright tests
34├── scripts/prepare-build.mjs # purges .next/cache/fetch-cache before build
35├── next.config.ts
36├── open-next.config.ts
37├── wrangler.toml # worker name + compatibility settings
38├── playwright.config.ts
39├── eslint.config.mjs
40├── postcss.config.mjs
41├── tsconfig.json
42├── components.json # shadcn config
43└── package.json
44```
45 
46## SCRIPTS
47 
48```bash
49# from packages/web/ directory
50bun install
51bun run dev # next dev (local Node.js)
52bun run lint # biome lint + eslint
53bun run lint:fix
54bun run format # prettier --write
55bun run format:check
56bun run type-check # tsgo --noEmit
57bun run build # next build (Node target — for sanity)
58bun run preview # opennextjs-cloudflare build + preview locally
59bun run deploy # opennextjs-cloudflare build + deploy to Cloudflare
60bun run test:e2e # playwright test
61bun run cf-typegen # regenerate cloudflare-env.d.ts from wrangler.toml bindings
62```
63 
64## CI/CD
65 
66| Workflow | Trigger | What |
67| ---------------------------------- | ---------------------------------------------------------------- | ----------------------------------------------------------------------- |
68| `.github/workflows/web-ci.yml` | push/PR to master/dev that touches `packages/web/**` | format check, lint, type-check, next build, opennextjs-cloudflare build |
69| `.github/workflows/web-deploy.yml` | push to master that touches `packages/web/**` OR manual dispatch | full deploy via `cloudflare/wrangler-action@v3` |
70 
71**Required secrets** (must be configured in repo settings before deploy works):
72 
73- `CLOUDFLARE_API_TOKEN` — token with `Workers Scripts: Edit` permission
74- `CLOUDFLARE_ACCOUNT_ID` — Cloudflare account ID
75 
76A `web-production` GitHub environment is referenced by the deploy workflow so deploys can be gated behind required reviewers / wait timers if desired.
77 
78## RELATIONSHIP TO npm PACKAGE
79 
80The npm package `oh-my-opencode` ships only `dist/`, `bin/`, and `postinstall.mjs` (see root `package.json` `files` field). `packages/web/` is **not** included in any npm publish — it is exclusively a separate Cloudflare deployment target.
81 
82Root `bun test` ignores `packages/web/**` through `bunfig.toml` so `packages/web/e2e/*.spec.ts` does not pollute plugin tests.
83 
84## CONVENTIONS
85 
86- **No path aliases globally** in the omo project, but `packages/web/` is a Next.js app where `@/*` aliases are the framework default. Keep `@/*` confined to packages/web/.
87- Use the existing shadcn primitives in `components/ui/` rather than installing new UI libs.
88- All user-facing copy goes through `messages/{locale}.json`; never hardcode strings in components.
89- Format with prettier before commit — `web-ci.yml` enforces `format:check`.
90 
91## ANTI-PATTERNS
92 
93- Never run `npm install` in `packages/web/`. Use `bun install` only. (Root `.gitignore` already blocks `package-lock.json`.)
94- Never commit `.next/`, `.open-next/`, `.wrangler/`, `node_modules/` (covered by `packages/web/.gitignore`).
95- Never deploy locally with `bun run deploy` against production — use the GitHub Actions workflow so Cloudflare credentials live in one place.
96 

Commands it names

  • bun install
  • bun run dev
  • bun run lint
  • bun run lint:fix
  • bun run format
  • bun run format:check
  • bun run type-check
  • bun run build
  • bun run preview
  • bun run deploy
  • bun run test:e2e
  • bun run cf-typegen
  • bun.lock
  • bun test
  • npm install

Sections

  • packages/web/ — Marketing Site (Next.js + Cloudflare Workers)
  • OVERVIEW
  • STACK
  • STRUCTURE
  • SCRIPTS
  • from packages/web/ directory
  • CI/CD
  • RELATIONSHIP TO npm PACKAGE
  • CONVENTIONS
  • ANTI-PATTERNS

What it covers

setupbuildtestlint-formatcode-stylearchitecturedependenciesdeploymentmonorepodo-not

Stack — with the evidence

typescript

(1.00)

bun

(1.00)

biome

(1.00)

node

(0.95)

playwright

(0.85)

vitest

(0.70)

javascript

(0.60)

nextjs

(0.60)

eslint

(0.60)

github-actions

(0.60)

cloudflare

(0.60)

react

(0.50)

Format

AGENTS.md

A plain-markdown README for coding agents, deliberately unopinionated: no frontmatter, no globs, no vendor keys. That minimalism is why it became the one file a dozen different agents will read, and why it carries the least per-file targeting power of any format here.

What the corpus says about it

Repository

Owner
code-yeongyu
Language
—
License
—
Archived
no

All configs in this repo

Also in code-yeongyu/oh-my-openagent

Diff this repo’s formats

One repository carrying more than one format is the comparison this product exists for: does anyone actually write different content in each file, or is one a copy of the other?

The other instruction files in this repository
RepositoryFormatStackCoversScoreChanged
code-yeongyu/oh-my-openagent.agents/AGENTS.md · 67kAGENTS.mdtypescriptbun+5stylearchtesting-strategydatabase64/1002 days ago
code-yeongyu/oh-my-openagent.opencode/AGENTS.md · 67kAGENTS.mdtypescriptbun+5stylearchdo-not71/1002 days ago
code-yeongyu/oh-my-openagentAGENTS.md · 67kAGENTS.mdtypescriptbun+5setupbuildtestlint-format+1184/1002 days ago
code-yeongyu/oh-my-openagentassets/AGENTS.md · 67kAGENTS.mdtypescriptbun+5buildteststylearch88/1002 days ago
code-yeongyu/oh-my-openagentbin/AGENTS.md · 67kAGENTS.mdtypescriptbun+5teststylearch64/1002 days ago
code-yeongyu/oh-my-openagentpackages/AGENTS.md · 67kAGENTS.mdtypescriptnode+5buildtestlint-formatstyle+383/1002 days ago
code-yeongyu/oh-my-openagentpackages/agents-md-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archdependenciesapi48/1002 days ago
code-yeongyu/oh-my-openagentpackages/boulder-state/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archapi48/1002 days ago
code-yeongyu/oh-my-openagentpackages/claude-code-compat-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archagent-behaviour56/1002 days ago
code-yeongyu/oh-my-openagentpackages/comment-checker-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archdependenciesapi48/1002 days ago
code-yeongyu/oh-my-openagentpackages/delegate-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5stylearchdependenciesapi60/1002 days ago
code-yeongyu/oh-my-openagentpackages/git-bash-mcp/AGENTS.md · 67kAGENTS.mdtypescriptbun+5buildtestlint-formatarch+182/1002 days ago
code-yeongyu/oh-my-openagentpackages/hashline-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archtypesdependenciesapi48/1002 days ago
code-yeongyu/oh-my-openagentpackages/lsp-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archmonorepo43/1002 days ago
code-yeongyu/oh-my-openagentpackages/lsp-daemon/AGENTS.md · 67kAGENTS.mdtypescriptnode+5buildtestlint-formatarch+184/1002 days ago
code-yeongyu/oh-my-openagentpackages/lsp-tools-mcp/AGENTS.md · 67kAGENTS.mdtypescriptnode+5buildtestlint-formatarch74/1002 days ago
code-yeongyu/oh-my-openagentpackages/mcp-client-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5arch43/1002 days ago
code-yeongyu/oh-my-openagentpackages/mcp-stdio-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5archapi56/1002 days ago
code-yeongyu/oh-my-openagentpackages/model-core/AGENTS.md · 67kAGENTS.mdtypescriptbun+5arch54/1002 days ago
code-yeongyu/oh-my-openagentpackages/omo-codex/AGENTS.md · 67kAGENTS.mdtypescriptbun+5setupbuildtestarch+693/1002 days ago
Diff against .agents/AGENTS.md Diff against .opencode/AGENTS.md Diff against AGENTS.md Diff against assets/AGENTS.md Diff against bin/AGENTS.md Diff against packages/AGENTS.md Diff against packages/agents-md-core/AGENTS.md Diff against packages/boulder-state/AGENTS.md Diff against packages/claude-code-compat-core/AGENTS.md Diff against packages/comment-checker-core/AGENTS.md Diff against packages/delegate-core/AGENTS.md Diff against packages/git-bash-mcp/AGENTS.md Diff against packages/hashline-core/AGENTS.md Diff against packages/lsp-core/AGENTS.md Diff against packages/lsp-daemon/AGENTS.md Diff against packages/lsp-tools-mcp/AGENTS.md Diff against packages/mcp-client-core/AGENTS.md Diff against packages/mcp-stdio-core/AGENTS.md Diff against packages/model-core/AGENTS.md Diff against packages/omo-codex/AGENTS.md

Similar configs

Same format, overlapping stack, ranked by quality.

Same format, overlapping stack, ranked by quality
RepositoryFormatStackCoversScoreChanged
aaif-goose/gooseAGENTS.md · 52kAGENTS.mdrusttypescript+2setupbuildtestlint-format+6100/1003 days ago
n8n-io/n8npackages/@n8n/agents/AGENTS.md · 199kAGENTS.mdtypescriptlangchain+16buildteststylearch+3100/1003 days ago
duckduckgo/content-scope-scriptsspecial-pages/AGENTS.md · 70AGENTS.mdtypescriptjavascript+5buildteststylearch+3100/1003 days ago
mui/material-uiAGENTS.md · 99kAGENTS.mdtypescriptjavascript+13setupbuildtestlint-format+9100/1003 days ago
TryGhost/Ghoste2e/AGENTS.md · 55kAGENTS.mdtypescriptjavascript+12setupteststylearch+2100/1003 days ago
elastic/elasticsearchx-pack/plugin/core/src/main/java/org/elasticsearch/xpack/core/ml/AGENTS.md · 78kAGENTS.mdjavanode+4buildtestlint-formatstyle+2100/1003 days ago
elastic/elasticsearchx-pack/plugin/inference/AGENTS.md · 78kAGENTS.mdjavanode+4buildtestlint-formatstyle+3100/1003 days ago
unoplat/unoplat-code-confluenceunoplat-code-confluence-frontend/AGENTS.md · 95AGENTS.mdtypescriptpython+14setupbuildtestlint-format+6100/1002 days ago
RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack

RuleStack

Built by

Kynth Studio

Directory

Configs
Stacks
Compare formats
Diff two configs
Best AGENTS.md examples

Formats

AGENTS.md
CLAUDE.md
Cursor rules
Copilot instructions

Reference

Read API
Corpus health
Privacy Policy
Terms

RuleStack