Internal App Bootstrap
Purpose
Use this skill when a teammate wants to build a new internal application with a consistent, reviewable, documentation-first workflow instead of jumping straight into code.
This skill captures the workflow used to build i-skills from an empty workspace into a working full-stack application with:
- - requirements discovery before implementation
- documented architecture and workflow decisions
- a monorepo-style frontend and backend split
- authentication planning
- database and schema planning
- implementation sequencing
- validation and operational readiness
When To Use
Use this skill when the user asks for any of the following:
- - build a new app from scratch
- create a standardized internal tool
- bootstrap a full-stack product with a clear process
- help a team follow a repeatable app delivery workflow
- turn an idea into an MVP with aligned frontend, backend, and docs
Do not use this skill for narrow bug fixes, isolated UI tweaks, or one-off backend endpoint changes.
Core Principles
- 1. Requirements first
- Architecture before implementation
- Documentation before code
- English and Chinese documentation stay aligned
- Small, verifiable milestones
- Validation is part of delivery, not an afterthought
Reusable Standards To Apply
When using this skill, treat the repository standards under docs/ as reusable baseline rules, not project-specific trivia.
Documentation authority by domain
- -
docs/api-development.md and docs/api-development.cn.md define backend contract, route, schema, migration, authentication, and operational diagnostics expectations. - INLINECODE3 and
docs/ux-development.cn.md define navigation, form, feedback, authentication UX, responsive behavior, and content rules. - INLINECODE5 and
docs/coding-standards.cn.md define repository-wide structure, tooling, naming, validation, and change-discipline rules. - INLINECODE7 and
docs/copilot-guide.cn.md define the required docs-first workflow and the order in which work should happen.
Common rules worth reusing in new app bootstraps
- - Keep frontend, backend, and docs aligned around the same product vocabulary.
- Keep public contracts explicit and stable.
- Put business rules in backend services, not only in frontend behavior.
- Keep route handlers and page components thin.
- Use one JavaScript package manager consistently.
- Treat validation, health checks, and diagnostics as part of delivery.
- Prefer explicit auth, storage, and database boundaries over hidden side effects.
- If production uses PostgreSQL, use explicit schema management and migrations.
- If UI depends on backend data or permissions, design both fallback and error states intentionally.
- Do not call work complete if paired documentation and validation are missing.
Standard Workflow
1. Clarify the business problem
Start by extracting the operational shape of the app.
Capture at minimum:
- - who will use it
- what the primary jobs-to-be-done are
- whether the app is internal or external
- whether data is sensitive or regulated
- what the MVP must include
- what is explicitly out of scope
Use the requirements template in templates/requirements-template.md and templates/requirements-template.cn.md.
2. Identify non-negotiable constraints
Before proposing architecture, confirm constraints such as:
- - authentication provider
- deployment environment
- database target
- storage strategy
- whether uploads are required
- access control and visibility rules
- whether the app executes user-provided artifacts or only stores/references them
- mobile adaptation expectations
3. Propose a concrete solution
After the requirements are clear, propose a solution that covers:
- - frontend framework
- backend framework
- database
- auth integration
- storage approach
- recommended project structure
- MVP page map or workflow map
- major risks and tradeoffs
Do not start implementation until the solution is confirmed.
4. Create or update documentation first
Before code changes, write or update the relevant English and Chinese docs.
Always read the matching standards in docs/ first and treat them as the authority for what needs to be documented and validated.
For a new product or workflow, document at least:
- - API expectations
- UX expectations
- coding standards if new conventions are introduced
- workflow guidance if team process is affected
5. Establish the workspace and toolchain
Set up the project structure intentionally.
Typical baseline:
- - frontend under INLINECODE12
- backend under INLINECODE13
- docs under INLINECODE14
- shared workflow guidance under INLINECODE15
Normalize the toolchain early:
- - choose one JavaScript package manager
- define dev tasks
- define environment file conventions
- avoid mixed lockfiles or partial scaffolding state
6. Build the MVP in thin vertical slices
Prefer end-to-end slices over isolated piles of code.
A good slice order is:
- 1. app shell and navigation
- backend models and core routes
- frontend pages wired to documented contracts
- upload or creation workflow
- review or approval workflow
- authentication integration
- operational tooling
7. Integrate auth and identity deliberately
If authentication is required:
- - separate browser and server auth concerns
- avoid hardcoding secrets
- document runtime configuration
- expose a minimal profile or debug view for identity inspection when needed
- derive sensitive identity fields on the server
8. Treat the database as a product concern
If production uses PostgreSQL:
- - configure the target database and schema explicitly
- avoid relying on implicit defaults
- manage schema changes through Alembic migrations
- provide diagnostics for connectivity, schema, and revision state
9. Add operational affordances
Before calling the app usable, add:
- - dev tasks for common operations
- health or diagnostics commands
- migration commands
- clear local startup instructions
10. Validate before handoff
Validation should include the touched surfaces.
Typical checks:
- - frontend build
- backend import or startup sanity check
- representative endpoint checks
- auth flow validation when applicable
- migration or schema validation when applicable
Use the delivery checklist in templates/delivery-checklist.md and templates/delivery-checklist.cn.md.
Expected Deliverables
A complete bootstrap task should usually produce:
- - a documented requirements summary
- a confirmed architecture proposal
- updated English and Chinese docs
- runnable frontend and backend foundations
- clear environment and task configuration
- validated core flows
- a concise change summary and next steps
Output Pattern
When using this skill, structure the work like this:
- 1. Requirements summary
- Proposed architecture and MVP boundaries
- Documentation updates
- Implementation plan
- Code and configuration changes
- Validation results
- Follow-up recommendations
Common Failure Modes
Avoid these mistakes:
- - coding before confirming requirements
- skipping the relevant
docs/ files and inferring rules only from existing code - letting docs lag behind implementation
- using mock behavior as the contract
- mixing package managers
- wiring auth without a debug path
- relying on automatic database mutation in shared environments
- stopping at scaffolding without validating real workflows
Skill Assets
- - INLINECODE19
- INLINECODE20
- INLINECODE21
- INLINECODE22
Use the templates directly when preparing a new app kickoff or reviewing whether a build is truly complete.
内部应用引导程序
目的
当团队成员希望构建一个新的内部应用程序,并采用一致、可审查、文档优先的工作流程,而不是直接开始编码时,请使用此技能。
此技能记录了从空白工作区构建完整全栈应用的工作流程,包含:
- - 实施前的需求发现
- 记录架构和工作流决策
- 单体仓库风格的前后端分离
- 认证规划
- 数据库和模式规划
- 实施顺序
- 验证和运维就绪
使用时机
当用户提出以下任何请求时,请使用此技能:
- - 从零开始构建新应用
- 创建标准化的内部工具
- 以清晰流程引导全栈产品
- 帮助团队遵循可重复的应用交付工作流
- 将想法转化为具有对齐前端、后端和文档的MVP
不要将此技能用于狭窄的bug修复、孤立的UI调整或一次性后端端点变更。
核心原则
- 1. 需求优先
- 架构先于实施
- 文档先于代码
- 中英文文档保持一致
- 小而可验证的里程碑
- 验证是交付的一部分,而非事后考虑
可复用的标准
使用此技能时,将docs/下的仓库标准视为可复用的基线规则,而非项目特定的琐碎事项。
按领域的文档权威性
- - docs/api-development.md和docs/api-development.cn.md定义了后端契约、路由、模式、迁移、认证和运维诊断期望。
- docs/ux-development.md和docs/ux-development.cn.md定义了导航、表单、反馈、认证用户体验、响应式行为和内容规则。
- docs/coding-standards.md和docs/coding-standards.cn.md定义了仓库范围的结构、工具、命名、验证和变更纪律规则。
- docs/copilot-guide.md和docs/copilot-guide.cn.md定义了所需的文档优先工作流以及工作应发生的顺序。
在新应用引导中值得复用的通用规则
- - 保持前端、后端和文档围绕相同的产品词汇对齐。
- 保持公共契约明确且稳定。
- 将业务规则放在后端服务中,而不仅仅在前端行为中。
- 保持路由处理器和页面组件精简。
- 始终如一地使用一个JavaScript包管理器。
- 将验证、健康检查和诊断视为交付的一部分。
- 优先使用显式的认证、存储和数据库边界,而非隐藏的副作用。
- 如果生产环境使用PostgreSQL,请使用显式的模式管理和迁移。
- 如果UI依赖后端数据或权限,请有意设计回退和错误状态。
- 如果缺少配套的文档和验证,不要将工作标记为完成。
标准工作流程
1. 明确业务问题
首先提取应用的运营形态。
至少记录:
- - 谁将使用它
- 主要的待完成工作是什么
- 应用是内部还是外部
- 数据是否敏感或受监管
- MVP必须包含什么
- 明确不在范围内的是什么
使用templates/requirements-template.md和templates/requirements-template.cn.md中的需求模板。
2. 识别不可协商的约束
在提出架构之前,确认约束条件,例如:
- - 认证提供商
- 部署环境
- 数据库目标
- 存储策略
- 是否需要上传
- 访问控制和可见性规则
- 应用是否执行用户提供的工件,还是仅存储/引用它们
- 移动端适配期望
3. 提出具体解决方案
在需求明确后,提出涵盖以下内容的解决方案:
- - 前端框架
- 后端框架
- 数据库
- 认证集成
- 存储方法
- 推荐的项目结构
- MVP页面地图或工作流地图
- 主要风险和权衡
在解决方案确认之前,不要开始实施。
4. 首先创建或更新文档
在代码变更之前,编写或更新相关的中英文文档。
始终先阅读docs/中的匹配标准,并将其视为需要记录和验证的权威依据。
对于新产品或工作流,至少记录:
- - API期望
- 用户体验期望
- 如果引入新约定,则记录编码标准
- 如果团队流程受到影响,则记录工作流指南
5. 建立工作区和工具链
有意地设置项目结构。
典型基线:
- - 前端位于apps/web
- 后端位于apps/api
- 文档位于docs
- 共享工作流指南位于.github
尽早规范化工具链:
- - 选择一个JavaScript包管理器
- 定义开发任务
- 定义环境文件约定
- 避免混合锁文件或部分脚手架状态
6. 以薄垂直切片构建MVP
优先使用端到端切片,而非孤立的代码堆叠。
良好的切片顺序是:
- 1. 应用外壳和导航
- 后端模型和核心路由
- 前端页面连接到已记录的契约
- 上传或创建工作流
- 审核或批准工作流
- 认证集成
- 运维工具
7. 有意地集成认证和身份
如果需要认证:
- - 分离浏览器和服务器认证关注点
- 避免硬编码密钥
- 记录运行时配置
- 在需要时暴露最小的配置文件或调试视图用于身份检查
- 在服务器上派生敏感身份字段
8. 将数据库视为产品关注点
如果生产环境使用PostgreSQL:
- - 显式配置目标数据库和模式
- 避免依赖隐式默认值
- 通过Alembic迁移管理模式变更
- 提供连接、模式和修订状态的诊断
9. 添加运维便利设施
在将应用标记为可用之前,添加:
- - 常见操作的开发任务
- 健康或诊断命令
- 迁移命令
- 清晰的本地启动说明
10. 在移交前进行验证
验证应涵盖所有触及的表面。
典型检查:
- - 前端构建
- 后端导入或启动健全性检查
- 代表性端点检查
- 适用时的认证流程验证
- 适用时的迁移或模式验证
使用templates/delivery-checklist.md和templates/delivery-checklist.cn.md中的交付检查清单。
预期交付物
一个完整的引导任务通常应产生:
- - 记录的需求摘要
- 确认的架构方案
- 更新的中英文文档
- 可运行的前端和后端基础
- 清晰的环境和任务配置
- 已验证的核心流程
- 简洁的变更摘要和后续步骤
输出模式
使用此技能时,按以下方式组织工作:
- 1. 需求摘要
- 建议的架构和MVP边界
- 文档更新
- 实施计划
- 代码和配置变更
- 验证结果
- 后续建议
常见失败模式
避免以下错误:
- - 在确认需求之前编码
- 跳过相关的docs/文件,仅从现有代码推断规则
- 让文档落后于实施
- 将模拟行为作为契约
- 混合使用包管理器
- 在没有调试路径的情况下连接认证
- 在共享环境中依赖自动数据库变更
- 停留在脚手架阶段而不验证实际工作流
技能资产
- - templates/requirements-template.md
- templates/requirements-template.cn.md
- templates/delivery-checklist.md
- templates/delivery-checklist.cn.md
在准备新应用启动或审查构建是否真正完成时,直接使用这些模板。