用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/Dev-Toolbelt/dev-team-agents --skill architecture-awareness命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
基于 SOC 职业分类
正在显示 SKILL.md
| name | architecture-awareness |
| description | Architecture context before implementing — rendering model, service boundaries, layer depth. |
Read only the section that matches your context. Loading this skill does not mean reading all of it.
| Consumer / context | Read |
|---|---|
| Agent implementing server-side code | Backend Context |
| Agent implementing browser UI | Client Rendering Model + Frontend Context |
| Agent implementing native or cross-platform mobile UI | Mobile Context |
| Work crosses layers (full-stack task) | Both matching sections |
Always applies, regardless of section: Layer Depth Contract (bottom of this file).
Detect the model before touching a view. It determines where state and routing live, not which library is used.
| Structural signal | Model | Consequence |
|---|---|---|
| A build step emits a JS bundle; server returns a shell HTML document; routes resolve client-side | Decoupled client | State, routing, and data fetching are client concerns; the server is a data API |
| Server returns fully-formed HTML per route; template files live beside controllers | Server-rendered templates | Routing, data, and views are one unit; JS enhances an already-working page |
| Server returns HTML for the first paint, then a client bundle takes over routing | Hybrid / server-side rendering with hydration | Every piece of code must declare which side it runs on; never assume browser globals exist |
If the signals conflict (both a bundle config and server-side templates), the project is hybrid or migrating — ask before choosing a side.
Decoupled client — the shipped bundle is a deliverable with a budget:
vite-bundle-visualizer or webpack-bundle-analyzer) rather than guessing at bloatServer-rendered templates — the deliverable is HTML:
backend-developer: routing, data, and views are handled togetherHybrid — for each module, state explicitly whether it runs on the server, the client, or both, and never reach for browser or server-only globals outside their side.
| Structural signal | Model | Consequence |
|---|---|---|
| Views are rendered by a separate client; the server returns serialized data only | API-first (decoupled) | Focus on request/response contracts, validation, serialization, statelessness |
| Views are rendered by the same application that owns the routes and data | Monolithic (server-rendered) | Routing, controllers, and views change together |
| Multiple independently deployed services own separate data stores | Distributed services | Cross-service calls are network calls: define the contract, the timeout, and the failure behavior before writing them |
frontend-developer or ui-ux-designer when work touches views.Bundle analysis and DOM-oriented rendering rules above do not apply. What matters:
| Concern | Rule |
|---|---|
| Client/server boundary | The app is an untrusted client — every authorization decision is made server-side, never in the app |
| Offline and connectivity | Decide, per screen, what happens with no network: cached, queued, or blocked. Do not leave it implicit |
| API contract shape | Round trips are expensive on mobile networks — prefer contracts that fill a screen in one call over chatty per-widget endpoints |
| State ownership | Distinguish device-local state (survives relaunch) from server-owned state (must be reconciled on resume) |
| Native boundaries | Cross-platform code calling into native modules is a layer boundary — keep the platform-specific part isolated behind one interface |
Platform UI conventions live in the platform skills, not here.
Before deciding on class structure, check architecture.md for the layer depth defined for the module being implemented — the software-architect may have specified different depths per domain area (a shallower chain for simple CRUD modules, a full chain including a persistence-abstraction layer for complex ones). Follow what is documented; do not infer a depth from other modules.