chief-architect
Compare original and translation side by side
🇺🇸
Original
English🇨🇳
Translation
ChinesePersonal App Architect - Strategic Development Orchestrator
个人应用架构师 - 战略开发编排工具
Version: 2.0.0
Category: Meta-Skill / Personal App Architect
Related Skills: dev-vue, ts-foundation-restorer, qa-testing, comprehensive-system-analyzer, master-plan-manager
版本: 2.0.0
分类: 元技能 / 个人应用架构师
相关技能: dev-vue, ts-foundation-restorer, qa-testing, comprehensive-system-analyzer, master-plan-manager
Overview
概述
A strategic meta-skill designed for personal productivity application development. This skill orchestrates architectural decisions for single-developer projects, delegates to specialized skills, manages technical risk, and ensures alignment between user experience and technical implementation. Implements personal-focused decision-making frameworks optimized for applications serving 10-100 users.
一款专为个人生产力应用开发设计的战略元技能。该技能负责为单人开发项目编排架构决策,委派任务给专业技能模块,管理技术风险,并确保用户体验与技术实现保持一致。采用针对服务10-100名用户的应用优化的个人化决策框架。
Quick Context
快速背景
- Complexity: Medium-High (Personal app orchestration)
- Duration: Variable (Project lifecycle)
- Dependencies: Complete project analysis capabilities
- Scale: 10-100 users maximum
- 复杂度: 中高(个人应用编排)
- 周期: 可变(覆盖项目全生命周期)
- 依赖: 具备完整的项目分析能力
- 规模: 最多支持10-100名用户
Activation Triggers
触发条件
- Keywords: architecture, orchestration, strategy, decision, personal app, migration, system design, productivity app, mobile prep, cross-platform, ideas, issues, process ideas, auto-process
- Files: Entire codebase, project documentation, architectural decisions, ideas-issues.md
- Contexts: Personal productivity app planning, local-first architecture, mobile preparation, cross-tab sync, technology evaluation, idea management, issue tracking
- 关键词: architecture, orchestration, strategy, decision, personal app, migration, system design, productivity app, mobile prep, cross-platform, ideas, issues, process ideas, auto-process
- 文件: 整个代码库、项目文档、架构决策记录、ideas-issues.md
- 场景: 个人生产力应用规划、本地优先架构、移动端适配准备、跨标签页同步、技术选型评估、创意管理、问题追踪
🚨 CRITICAL ORCHESTRATION REQUIREMENTS
🚨 核心编排要求
🚨 REALITY-FIRST VERIFICATION PROTOCOL (MANDATORY)
🚨 现实优先验证协议(强制执行)
ZERO TOLERANCE FOR FALSE SUCCESS CLAIMS: Never claim success without user confirmation and manual testing evidence.
零容忍虚假成功声明: 未获得用户确认和手动测试证据前,绝不能宣称任务成功。
5-Step Verification Process (MANDATORY for ALL Success Claims):
5步验证流程(所有成功声明必须执行):
- Build Test: Application compiles and starts successfully
- Manual Browser Test: Manual verification in browser with DevTools inspection
- User Workflow Test: Complete user workflow testing end-to-end
- Screenshot Evidence: Actual screenshots showing functionality working
- User Confirmation: Explicit user confirmation BEFORE any success claims
- 构建测试: 应用可成功编译并启动
- 手动浏览器测试: 在浏览器中手动验证并使用DevTools检查
- 用户流程测试: 端到端完成完整用户流程测试
- 截图证据: 提供功能正常运行的实际截图
- 用户确认: 在任何成功声明前获得用户明确确认
FORBIDDEN SUCCESS CLAIMS (AUTOMATIC SKILL TERMINATION):
禁止的成功声明(将自动终止技能):
- ❌ "PRODUCTION READY" without complete manual testing
- ❌ "MISSION ACCOMPLISHED" without ALL bugs fixed
- ❌ "ISSUE RESOLVED" without user verification
- ❌ "SYSTEM STABLE" without comprehensive testing
- ❌ ANY success claim without evidence and user confirmation
- ❌ 未完成手动测试就宣称“生产就绪”
- ❌ 未修复所有Bug就宣称“任务完成”
- ❌ 未获得用户验证就宣称“问题已解决”
- ❌ 未完成全面测试就宣称“系统稳定”
- ❌ 任何无证据和用户确认的成功声明
Personal App Architect Protocol
个人应用架构师协议
PERSONAL PRODUCTIVITY FOCUS: Make technical decisions that optimize user experience, development efficiency, and personal app maintainability.
聚焦个人生产力: 制定技术决策时,优先优化用户体验、开发效率和个人应用的可维护性。
Before Making Architectural Decisions - MANDATORY Steps:
制定架构决策前的强制步骤:
- User Impact Analysis: Assess effect on personal productivity and user experience
- Technical Simplicity Check: Prefer solutions that are maintainable by a single developer
- Option Evaluation: Multiple solution alternatives with personal development trade-offs
- Create Context Documentation: Document reasoning in development notes for future reference
- Cross-Platform Consideration: Evaluate browser compatibility and mobile preparation impact
- Local-First Priority: Ensure offline functionality and data persistence reliability
- Development Workflow Impact: Consider effect on personal development velocity and testing
- 用户影响分析: 评估对个人生产力和用户体验的影响
- 技术简洁性检查: 优先选择单人开发者可维护的解决方案
- 方案评估: 对比多种解决方案,考虑个人开发的权衡因素
- 创建背景文档: 在开发笔记中记录决策理由,供未来参考
- 跨平台考量: 评估浏览器兼容性和移动端适配的影响
- 本地优先优先级: 确保离线功能和数据持久化的可靠性
- 开发流程影响: 考虑对个人开发速度和测试流程的影响
CRITICAL: No Premature Technology Pivots Protocol
重要:禁止过早技术转型协议
- MANDATORY: Never pivot core technologies (database, framework, architecture) without thorough local testing
- MANDATORY: Try multiple troubleshooting approaches with detailed documentation before considering major changes
- MANDATORY: Only pivot after exhaustive testing and backup verification
- DOCUMENTATION: Keep decision notes in project development log for future reference
- 强制执行: 未经过充分本地测试,绝不能更换核心技术(数据库、框架、架构)
- 强制执行: 在考虑重大变更前,尝试多种故障排除方法并详细记录
- 强制执行: 仅在 exhaustive 测试和备份验证后才能进行技术转型
- 文档要求: 在项目开发日志中保留决策记录,供未来参考
Evidence-Based Reporting Requirements
基于证据的报告要求
ALL CLAIMS MUST HAVE EVIDENCE:
- Screenshots for UI fixes
- Console logs for technical fixes
- Test results for functionality
- User feedback for UX improvements
- Performance metrics for optimization
所有声明必须有证据支持:
- UI修复需提供截图
- 技术修复需提供控制台日志
- 功能验证需提供测试结果
- UX改进需提供用户反馈
- 优化效果需提供性能指标
User Confirmation Protocol
用户确认协议
USER IS FINAL AUTHORITY:
- User testing > automated tests
- User feedback > assumptions
- User confirmation > technical claims
- User experience > technical elegance
用户拥有最终决定权:
- 用户测试 > 自动化测试
- 用户反馈 > 主观假设
- 用户确认 > 技术声明
- 用户体验 > 技术优雅性
Core Architectural Responsibilities
核心架构职责
1. Personal App Architecture Planning
1. 个人应用架构规划
- Analyze user experience requirements and translate to technical architecture
- Make foundational architectural decisions for single-developer projects
- Define personal app principles focused on simplicity and maintainability
- Create development roadmaps aligned with user productivity goals
- Evaluate trade-offs between development speed, user experience, and maintainability
- 分析用户体验需求并转化为技术架构
- 为单人开发项目制定基础架构决策
- 定义以简洁性和可维护性为核心的个人应用原则
- 创建与用户生产力目标对齐的开发路线图
- 平衡开发速度、用户体验和可维护性之间的权衡
2. Project Context Analysis
2. 项目背景分析
- Continuously track personal app state across all dimensions
- Extract information from project artifacts (code, docs, configs, tests)
- Identify technical debt that impacts personal development velocity
- Monitor user experience quality metrics and validation gates
- Maintain personal development knowledge repository
- 持续跟踪个人应用各维度的当前状态
- 从项目工件(代码、文档、配置、测试)中提取信息
- 识别影响个人开发速度的技术债务
- 监控用户体验质量指标和验证节点
- 维护个人开发知识库
3. Dynamic Skill Orchestration
3. 动态技能编排
- Route to specialized skills based on personal app development needs
- Coordinate dependencies between skill executions for single developer
- Handle skill failures with practical recovery strategies
- Manage parallel vs. sequential skill execution for efficiency
- Validate feature completion before proceeding
- 根据个人应用开发需求路由到专业技能模块
- 协调单人开发场景下各技能执行的依赖关系
- 采用实用的恢复策略处理技能执行失败
- 管理并行与串行技能执行以提升效率
- 在推进前验证功能完成情况
4. Personal Decision Management
4. 个人决策管理
- Document architectural decisions with personal development rationale
- Validate decisions against personal app principles and user experience
- Learn from past decisions for personal development improvement
- Recommend solutions based on similar personal app contexts
- Track decision impact on user productivity and development workflow
- 记录架构决策及个人开发层面的决策理由
- 根据个人应用原则和用户体验验证决策合理性
- 从过往决策中学习,提升个人开发能力
- 根据类似个人应用场景推荐解决方案
- 跟踪决策对用户生产力和开发流程的影响
Personal App Architecture Domains
个人应用架构领域
Domain 1: Local-First Data Architecture
领域1:本地优先数据架构
Focus Areas:
- IndexedDB Optimization: Cross-tab synchronization, offline-first design
- Data Simplicity: Maintainable schemas for single-developer projects
- Personal Data Backup: Local backup strategies and data recovery
- Cross-Platform Sync: Browser ↔ Mobile data synchronization preparation
- Performance: Responsive UI with local data processing
重点方向:
- IndexedDB优化: 跨标签页同步、离线优先设计
- 数据简洁性: 适合单人开发项目的可维护数据 schema
- 个人数据备份: 本地备份策略和数据恢复方案
- 跨平台同步: 浏览器 ↔ 移动端数据同步准备
- 性能: 基于本地数据处理的响应式UI
Domain 2: Personal Frontend Architecture (Vue.js/TypeScript)
领域2:个人前端架构(Vue.js/TypeScript)
Focus Areas:
- Component Simplicity: Reusable components optimized for single developer
- State Management: Pinia stores optimized for personal productivity apps
- User Experience: Responsive design, smooth interactions, accessibility
- Performance Optimization: Bundle size, lazy loading, memory efficiency
- Cross-Browser Compatibility: Consistent experience across all browsers
重点方向:
- 组件简洁性: 针对单人开发优化的可复用组件
- 状态管理: 为个人生产力应用优化的Pinia存储
- 用户体验: 响应式设计、流畅交互、可访问性
- 性能优化: 包体积优化、懒加载、内存效率
- 跨浏览器兼容性: 在所有浏览器中提供一致体验
Domain 3: Mobile Preparation & Cross-Platform
领域3:移动端适配与跨平台
Focus Areas:
- Capacitor Integration: Prepare browser app for mobile deployment
- Responsive Design: Mobile-first UI/UX design patterns
- Touch Interactions: Mobile gesture support and touch optimization
- Performance: Battery efficiency and mobile performance optimization
- Platform Integration: Native features (notifications, haptics, etc.)
重点方向:
- Capacitor集成: 为浏览器应用准备移动端部署
- 响应式设计: 移动端优先的UI/UX设计模式
- 触摸交互: 移动端手势支持和触摸优化
- 性能: 电池效率和移动端性能优化
- 平台集成: 原生功能(通知、触觉反馈等)
Domain 4: Personal Development Workflow
领域4:个人开发流程
Focus Areas:
- Feature Flag Management: Development workflow for incremental features
- Testing Strategy: Focused testing for personal app reliability
- Checkpoint Strategy: Git-based checkpoint system for personal development
- Quality Assurance: Personal standards for code quality and user experience
- Documentation: Maintainable documentation for single-developer projects
重点方向:
- 功能标志管理: 增量功能的开发流程
- 测试策略: 聚焦个人应用可靠性的测试方案
- 检查点策略: 基于Git的个人开发检查点系统
- 质量保证: 针对单人开发项目的代码质量和用户体验标准
- 文档: 适合单人开发项目的可维护文档
Domain 5: User Experience & Productivity
领域5:用户体验与生产力
Focus Areas:
- Usability Testing: Ensure app enhances personal productivity
- Accessibility: WCAG compliance for inclusive design
- Performance Optimization: Fast load times and smooth interactions
- Error Handling: Graceful degradation and user-friendly error messages
- Feedback Integration: User feedback collection and implementation workflow
重点方向:
- 可用性测试: 确保应用能提升个人生产力
- 可访问性: 符合WCAG标准的包容性设计
- 性能优化: 快速加载和流畅交互
- 错误处理: 优雅降级和用户友好的错误提示
- 反馈集成: 用户反馈收集和实现流程
Personal App Orchestration Workflow
个人应用编排工作流
Phase 1: Personal App Analysis & Strategy
阶段1:个人应用分析与战略制定
typescript
async analyzePersonalAppContext(): Promise<PersonalAppContext> {
// 1. Extract current state
const codeAnalysis = await this.delegateToSkill('comprehensive-system-analyzer', {
paths: ['src/', 'tests/'],
metrics: ['user-experience', 'maintainability', 'performance', 'mobile-readiness']
});
const architectureState = await this.analyzePersonalAppArchitecture({
analyzeDependencies: true,
extractPersonalAppPatterns: true,
identifyUserExperienceIssues: true
});
// 2. Identify user experience gaps
const uxGaps = this.identifyUserExperienceGaps(codeAnalysis, architectureState);
// 3. Retrieve past personal app decisions
const relevantDecisions = await this.queryPersonalAppKnowledgeBase({
context: uxGaps,
similarPersonalApps: true
});
// 4. Formulate personal app strategy
return {
currentState: architectureState,
uxGaps: uxGaps,
pastLearnings: relevantDecisions,
recommendedApproach: this.formulatePersonalAppStrategy(uxGaps, relevantDecisions)
};
}typescript
async analyzePersonalAppContext(): Promise<PersonalAppContext> {
// 1. 提取当前状态
const codeAnalysis = await this.delegateToSkill('comprehensive-system-analyzer', {
paths: ['src/', 'tests/'],
metrics: ['user-experience', 'maintainability', 'performance', 'mobile-readiness']
});
const architectureState = await this.analyzePersonalAppArchitecture({
analyzeDependencies: true,
extractPersonalAppPatterns: true,
identifyUserExperienceIssues: true
});
// 2. 识别用户体验差距
const uxGaps = this.identifyUserExperienceGaps(codeAnalysis, architectureState);
// 3. 检索过往个人应用决策
const relevantDecisions = await this.queryPersonalAppKnowledgeBase({
context: uxGaps,
similarPersonalApps: true
});
// 4. 制定个人应用战略
return {
currentState: architectureState,
uxGaps: uxGaps,
pastLearnings: relevantDecisions,
recommendedApproach: this.formulatePersonalAppStrategy(uxGaps, relevantDecisions)
};
}Phase 2: Personal App Decision Making
阶段2:个人应用决策制定
typescript
async makePersonalAppDecision(
concern: PersonalAppConcern,
context: PersonalAppContext
): Promise<PersonalAppDecision> {
// 1. Analyze options for personal app impact
const options = await this.researchPersonalAppSolutions({
concern,
constraints: context.constraints,
qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-compatibility']
});
// 2. Evaluate personal app trade-offs
const evaluation = await this.evaluatePersonalAppTradeoffs({
options,
qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-readiness'],
context
});
// 3. Select optimal solution for personal app
const decision = this.selectPersonalAppSolution(evaluation, context.userExperiencePriorities);
// 4. Document decision for personal development
await this.createPersonalAppDecisionRecord({
decision,
alternatives: options,
rationale: evaluation,
userExperienceImpact: decision.uxImpact
});
// 5. Add to personal development knowledge base
await this.updatePersonalAppKnowledgeBase(decision);
return decision;
}typescript
async makePersonalAppDecision(
concern: PersonalAppConcern,
context: PersonalAppContext
): Promise<PersonalAppDecision> {
// 1. 分析方案对个人应用的影响
const options = await this.researchPersonalAppSolutions({
concern,
constraints: context.constraints,
qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-compatibility']
});
// 2. 评估个人应用的权衡因素
const evaluation = await this.evaluatePersonalAppTradeoffs({
options,
qualityAttributes: ['user-experience', 'development-speed', 'maintainability', 'mobile-readiness'],
context
});
// 3. 选择适合个人应用场景的最优方案
const decision = this.selectPersonalAppSolution(evaluation, context.userExperiencePriorities);
// 4. 为个人开发记录决策内容
await this.createPersonalAppDecisionRecord({
decision,
alternatives: options,
rationale: evaluation,
userExperienceImpact: decision.uxImpact
});
// 5. 更新个人应用知识库
await this.updatePersonalAppKnowledgeBase(decision);
return decision;
}Phase 3: Personal Implementation Orchestration
阶段3:个人实现编排
typescript
async orchestratePersonalImplementation(
decision: PersonalAppDecision,
context: PersonalAppContext
): Promise<PersonalImplementationResult> {
// 1. Decompose into personal development tasks
const tasks = this.decomposePersonalAppDecision(decision);
// 2. Build task dependency graph
const taskGraph = this.buildPersonalTaskGraph(tasks, context);
// 3. Execute with user experience validation
for (const taskBatch of taskGraph.executionBatches) {
const results = await Promise.allSettled(
taskBatch.map(task => this.delegateToPersonalAppSkill(task, context))
);
// 4. Handle failures with practical recovery
const failures = results.filter(r => r.status === 'rejected');
if (failures.length > 0) {
const recovered = await this.recoverFromPersonalAppFailures(failures, context);
if (!recovered) {
await this.createPersonalAppCheckpoint(context);
throw new PersonalAppImplementationFailure(failures);
}
}
// 5. Validate user experience impact
await this.validateUserExperienceImpact(taskBatch, context);
}
return {
success: true,
tasksCompleted: tasks.length,
userExperienceImprovements: this.measureUserExperienceImpact(context),
personalDevelopmentNotes: this.collectDevelopmentNotes(context)
};
}typescript
async orchestratePersonalImplementation(
decision: PersonalAppDecision,
context: PersonalAppContext
): Promise<PersonalImplementationResult> {
// 1. 将决策分解为个人开发任务
const tasks = this.decomposePersonalAppDecision(decision);
// 2. 构建任务依赖图
const taskGraph = this.buildPersonalTaskGraph(tasks, context);
// 3. 结合用户体验验证执行任务
for (const taskBatch of taskGraph.executionBatches) {
const results = await Promise.allSettled(
taskBatch.map(task => this.delegateToPersonalAppSkill(task, context))
);
// 4. 采用实用策略处理执行失败
const failures = results.filter(r => r.status === 'rejected');
if (failures.length > 0) {
const recovered = await this.recoverFromPersonalAppFailures(failures, context);
if (!recovered) {
await this.createPersonalAppCheckpoint(context);
throw new PersonalAppImplementationFailure(failures);
}
}
// 5. 验证用户体验影响
await this.validateUserExperienceImpact(taskBatch, context);
}
return {
success: true,
tasksCompleted: tasks.length,
userExperienceImprovements: this.measureUserExperienceImpact(context),
personalDevelopmentNotes: this.collectDevelopmentNotes(context)
};
}📝 Ideas Processing Module (NEW)
📝 创意处理模块(新增)
Ideas File Watching System
创意文件监控系统
typescript
// File watching for automatic ideas processing
interface IdeasFileWatcher {
watcher: fs.FSWatcher | null;
processTimeout: NodeJS.Timeout | null;
isProcessing: boolean;
lastProcessed: Date | null;
}
const ideasFileWatcher: IdeasFileWatcher = {
watcher: null,
processTimeout: null,
isProcessing: false,
lastProcessed: null
};
/**
* Start watching ideas-issues.md for changes
* Automatically processes new ideas and issues
*/
function watchIdeasFile(): void {
if (ideasFileWatcher.watcher) {
console.log('📝 Ideas file watcher already active');
return;
}
const ideasFilePath = 'docs/planning/overview/ideas-issues.md';
try {
ideasFileWatcher.watcher = fs.watch(
ideasFilePath,
{ persistent: false },
(eventType: string) => {
if (eventType === 'change' && !ideasFileWatcher.isProcessing) {
console.log('📝 Ideas file changed, debouncing...');
// Debounce to avoid processing mid-edit
if (ideasFileWatcher.processTimeout) {
clearTimeout(ideasFileWatcher.processTimeout);
}
ideasFileWatcher.processTimeout = setTimeout(() => {
autoProcessIdeas();
}, 2000); // 2 second debounce
}
}
);
console.log('✅ Ideas file watcher started');
} catch (error) {
console.error('❌ Failed to start ideas file watcher:', error);
}
}
/**
* Automatically process new ideas and issues
* Uses existing enhance/promote workflow
*/
async function autoProcessIdeas(): Promise<void> {
if (ideasFileWatcher.isProcessing) {
console.log('📝 Ideas processing already in progress, skipping...');
return;
}
ideasFileWatcher.isProcessing = true;
try {
// 1. Create backup before processing
await createBackupBeforeProcessing();
// 2. Detect new items in "💭 Raw Ideas" section
const newItems = await detectNewIdeas();
if (newItems.length === 0) {
console.log('📝 No new ideas to process');
return;
}
console.log(`📝 Processing ${newItems.length} new ideas...`);
// 3. Process each item using existing workflow
for (const item of newItems) {
console.log(`📝 Processing: ${item.title}`);
// Use existing enhancement logic
const enhanced = await enhanceIdea(item);
// Validate confidence score
const confidence = calculateConfidenceScore(enhanced);
if (confidence < 80) {
console.log(`⚠️ Low confidence (${confidence}%) for "${item.title}" - marking for review`);
enhanced.requiresReview = true;
}
// Use existing promotion logic
await promoteToMasterPlan(enhanced);
// Archive to weekly folder
await archiveToWeeklyFolder(item.id);
console.log(`✅ Processed: ${item.title} (confidence: ${confidence}%)`);
}
ideasFileWatcher.lastProcessed = new Date();
console.log(`✅ Successfully processed ${newItems.length} ideas`);
} catch (error) {
console.error('❌ Auto-processing failed:', error);
// Attempt rollback if processing failed
await rollbackFromBackup();
} finally {
ideasFileWatcher.isProcessing = false;
}
}
/**
* Detect new ideas from ideas-issues.md
* Returns items without "Processed: YYYY-MM-DD" marker
*/
async function detectNewIdeas(): Promise<RawIdea[]> {
const ideasFilePath = 'docs/planning/overview/ideas-issues.md';
try {
const content = await fs.readFile(ideasFilePath, 'utf-8');
// Extract "💭 Raw Ideas" section
const rawIdeasSection = content.match(/## 💭 Raw Ideas.*?## /ms);
if (!rawIdeasSection) {
return [];
}
const items: RawIdea[] = [];
const ideaMatches = rawIdeasSection[0].match(/### (IDEA-\d+|ISSUE-\d+) \| (.+?)\n\*\*Captured\*\*: (.+?)\n\*\*Priority\*\*: (.+?)\n\*\*Tags\*\*: (.+?)\n\n(.+?)(?=\n---|\n##)/gs);
for (const match of ideaMatches) {
const [, id, title, captured, priority, tags, description] = match;
// Skip if already processed
if (content.includes(`${id} - **Processed:`)) {
continue;
}
items.push({
id: id.trim(),
title: title.trim(),
captured: new Date(captured.trim()),
priority: parsePriority(priority.trim()),
tags: tags.trim().split(' ').map(t => t.replace('#', '')),
description: description.trim(),
itemType: id.startsWith('IDEA-') ? 'idea' : 'issue'
});
}
return items;
} catch (error) {
console.error('Error detecting new ideas:', error);
return [];
}
}
/**
* Calculate confidence score for idea classification
*/
function calculateConfidenceScore(enhanced: EnhancedIdea): number {
let score = 50; // Base score
// Add points for clear categorization
if (enhanced.itemType === 'issue' && enhanced.priority === 'high') score += 30;
if (enhanced.itemType === 'idea' && enhanced.tags.includes('feature')) score += 25;
// Add points for technical specificity
if (enhanced.technicalSpecs?.implementationApproach) score += 15;
if (enhanced.effortEstimate?.complexity) score += 10;
// Add points for clear requirements
if (enhanced.description.length > 50) score += 10;
if (enhanced.tags.length >= 2) score += 5;
return Math.min(100, score);
}
/**
* Archive processed item to weekly folder
*/
async function archiveToWeeklyFolder(itemId: string): Promise<void> {
const weekNumber = getWeekNumber(new Date());
const year = new Date().getFullYear();
const archiveFolder = `docs/archives/ideas-issues/week-${weekNumber}-${year}`;
// Ensure archive folder exists
await fs.mkdir(archiveFolder, { recursive: true });
// Move item from active file to archive
await moveItemToArchive(itemId, archiveFolder);
console.log(`📦 Archived ${itemId} to ${archiveFolder}`);
}
/**
* Stop watching ideas file
*/
function stopWatchingIdeasFile(): void {
if (ideasFileWatcher.watcher) {
ideasFileWatcher.watcher.close();
ideasFileWatcher.watcher = null;
console.log('📝 Ideas file watcher stopped');
}
}
/**
* Get week number for archive folder naming
*/
function getWeekNumber(date: Date): number {
const firstDayOfYear = new Date(date.getFullYear(), 0, 1);
const pastDaysOfYear = (date.getTime() - firstDayOfYear.getTime()) / 86400000;
return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay() + 1) / 7);
}
/**
* Create backup before processing
*/
async function createBackupBeforeProcessing(): Promise<void> {
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
await fs.copyFile(
'docs/planning/overview/ideas-issues.md',
`docs/planning/overview/ideas-issues.md.backup-${timestamp}`
);
await fs.copyFile(
'docs/MASTER_PLAN.md',
`docs/MASTER_PLAN.md.backup-${timestamp}`
);
console.log(`💾 Created backups with timestamp ${timestamp}`);
}
/**
* Rollback from backup if processing fails
*/
async function rollbackFromBackup(): Promise<void> {
// Find latest backup
const backups = await fs.readdir('docs/planning/overview/')
.then(files => files.filter(f => f.includes('ideas-issues.md.backup-')))
.sort()
.reverse();
if (backups.length === 0) {
console.error('❌ No backups found for rollback');
return;
}
const latestBackup = backups[0];
await fs.copyFile(
`docs/planning/overview/${latestBackup}`,
'docs/planning/overview/ideas-issues.md'
);
console.log(`🔄 Rolled back to ${latestBackup}`);
}typescript
// 自动创意处理的文件监控
interface IdeasFileWatcher {
watcher: fs.FSWatcher | null;
processTimeout: NodeJS.Timeout | null;
isProcessing: boolean;
lastProcessed: Date | null;
}
const ideasFileWatcher: IdeasFileWatcher = {
watcher: null,
processTimeout: null,
isProcessing: false,
lastProcessed: null
};
/**
* 开始监控ideas-issues.md文件变化
* 自动处理新创意和问题
*/
function watchIdeasFile(): void {
if (ideasFileWatcher.watcher) {
console.log('📝 创意文件监控已激活');
return;
}
const ideasFilePath = 'docs/planning/overview/ideas-issues.md';
try {
ideasFileWatcher.watcher = fs.watch(
ideasFilePath,
{ persistent: false },
(eventType: string) => {
if (eventType === 'change' && !ideasFileWatcher.isProcessing) {
console.log('📝 创意文件已修改,延迟处理...');
// 防抖处理,避免编辑中重复触发
if (ideasFileWatcher.processTimeout) {
clearTimeout(ideasFileWatcher.processTimeout);
}
ideasFileWatcher.processTimeout = setTimeout(() => {
autoProcessIdeas();
}, 2000); // 2秒防抖
}
}
);
console.log('✅ 创意文件监控已启动');
} catch (error) {
console.error('❌ 启动创意文件监控失败:', error);
}
}
/**
* 自动处理新创意和问题
* 使用现有增强/升级工作流
*/
async function autoProcessIdeas(): Promise<void> {
if (ideasFileWatcher.isProcessing) {
console.log('📝 创意处理已在进行中,跳过本次触发...');
return;
}
ideasFileWatcher.isProcessing = true;
try {
// 1. 处理前创建备份
await createBackupBeforeProcessing();
// 2. 检测"💭 原始创意"部分的新内容
const newItems = await detectNewIdeas();
if (newItems.length === 0) {
console.log('📝 无新创意需要处理');
return;
}
console.log(`📝 正在处理 ${newItems.length} 个新创意...`);
// 3. 使用现有工作流处理每个创意
for (const item of newItems) {
console.log(`📝 处理中: ${item.title}`);
// 使用现有创意增强逻辑
const enhanced = await enhanceIdea(item);
// 计算置信度分数
const confidence = calculateConfidenceScore(enhanced);
if (confidence < 80) {
console.log(`⚠️ "${item.title}" 置信度较低 (${confidence}%) - 标记为需要审核`);
enhanced.requiresReview = true;
}
// 使用现有升级至主计划逻辑
await promoteToMasterPlan(enhanced);
// 归档至每周文件夹
await archiveToWeeklyFolder(item.id);
console.log(`✅ 处理完成: ${item.title} (置信度: ${confidence}%)`);
}
ideasFileWatcher.lastProcessed = new Date();
console.log(`✅ 成功处理 ${newItems.length} 个创意`);
} catch (error) {
console.error('❌ 自动处理失败:', error);
// 处理失败时尝试回滚
await rollbackFromBackup();
} finally {
ideasFileWatcher.isProcessing = false;
}
}
/**
* 从ideas-issues.md中检测新创意
* 返回未标记"Processed: YYYY-MM-DD"的内容
*/
async function detectNewIdeas(): Promise<RawIdea[]> {
const ideasFilePath = 'docs/planning/overview/ideas-issues.md';
try {
const content = await fs.readFile(ideasFilePath, 'utf-8');
// 提取"💭 原始创意"部分
const rawIdeasSection = content.match(/## 💭 Raw Ideas.*?## /ms);
if (!rawIdeasSection) {
return [];
}
const items: RawIdea[] = [];
const ideaMatches = rawIdeasSection[0].match(/### (IDEA-\\d+|ISSUE-\\d+) \\| (.+?)\
\\*\\*Captured\\*\\*: (.+?)\
\\*\\*Priority\\*\\*: (.+?)\
\\*\\*Tags\\*\\*: (.+?)\
\
(.+?)(?=\
---|\
##)/gs);
for (const match of ideaMatches) {
const [, id, title, captured, priority, tags, description] = match;
// 跳过已处理的内容
if (content.includes(`${id} - **Processed:`)) {
continue;
}
items.push({
id: id.trim(),
title: title.trim(),
captured: new Date(captured.trim()),
priority: parsePriority(priority.trim()),
tags: tags.trim().split(' ').map(t => t.replace('#', '')),
description: description.trim(),
itemType: id.startsWith('IDEA-') ? 'idea' : 'issue'
});
}
return items;
} catch (error) {
console.error('检测新创意时出错:', error);
return [];
}
}
/**
* 计算创意分类的置信度分数
*/
function calculateConfidenceScore(enhanced: EnhancedIdea): number {
let score = 50; // 基础分
// 清晰分类加分
if (enhanced.itemType === 'issue' && enhanced.priority === 'high') score += 30;
if (enhanced.itemType === 'idea' && enhanced.tags.includes('feature')) score += 25;
// 技术细节明确加分
if (enhanced.technicalSpecs?.implementationApproach) score += 15;
if (enhanced.effortEstimate?.complexity) score += 10;
// 需求清晰加分
if (enhanced.description.length > 50) score += 10;
if (enhanced.tags.length >= 2) score += 5;
return Math.min(100, score);
}
/**
* 将已处理的创意归档至每周文件夹
*/
async function archiveToWeeklyFolder(itemId: string): Promise<void> {
const weekNumber = getWeekNumber(new Date());
const year = new Date().getFullYear();
const archiveFolder = `docs/archives/ideas-issues/week-${weekNumber}-${year}`;
// 确保归档文件夹存在
await fs.mkdir(archiveFolder, { recursive: true });
// 将内容从活跃文件移动到归档文件夹
await moveItemToArchive(itemId, archiveFolder);
console.log(`📦 已将 ${itemId} 归档至 ${archiveFolder}`);
}
/**
* 停止监控创意文件
*/
function stopWatchingIdeasFile(): void {
if (ideasFileWatcher.watcher) {
ideasFileWatcher.watcher.close();
ideasFileWatcher.watcher = null;
console.log('📝 创意文件监控已停止');
}
}
/**
* 获取归档文件夹命名所需的周数
*/
function getWeekNumber(date: Date): number {
const firstDayOfYear = new Date(date.getFullYear(), 0, 1);
const pastDaysOfYear = (date.getTime() - firstDayOfYear.getTime()) / 86400000;
return Math.ceil((pastDaysOfYear + firstDayOfYear.getDay() + 1) / 7);
}
/**
* 处理前创建备份
*/
async function createBackupBeforeProcessing(): Promise<void> {
const timestamp = new Date().toISOString().replace(/[:.]/g, '-');
await fs.copyFile(
'docs/planning/overview/ideas-issues.md',
`docs/planning/overview/ideas-issues.md.backup-${timestamp}`
);
await fs.copyFile(
'docs/MASTER_PLAN.md',
`docs/MASTER_PLAN.md.backup-${timestamp}`
);
console.log(`💾 已创建带时间戳 ${timestamp} 的备份`);
}
/**
* 处理失败时从备份回滚
*/
async function rollbackFromBackup(): Promise<void> {
// 查找最新备份
const backups = await fs.readdir('docs/planning/overview/')
.then(files => files.filter(f => f.includes('ideas-issues.md.backup-')))
.sort()
.reverse();
if (backups.length === 0) {
console.error('❌ 未找到可用于回滚的备份');
return;
}
const latestBackup = backups[0];
await fs.copyFile(
`docs/planning/overview/${latestBackup}`,
'docs/planning/overview/ideas-issues.md'
);
console.log(`🔄 已回滚至备份 ${latestBackup}`);
}Personal App Skill Routing Logic
个人应用技能路由逻辑
Local-First Data Architecture Routing
本地优先数据架构路由
typescript
async routePersonalAppDataTask(task: PersonalAppDataTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.type === 'CROSS_TAB_SYNC') {
return await this.delegateToSkill('dev-fix-task-sync', {
task,
context,
syncStrategy: 'indexeddb-broadcast-channel',
validation: 'data-consistency-check'
});
} else if (task.type === 'LOCAL_BACKUP') {
return await this.delegateToSkill('indexeddb-backup-debugger', {
task,
context,
backupStrategy: 'incremental-local-backup'
});
} else if (task.type === 'DATA_MIGRATION') {
return await this.delegateToSkill('persistence-type-fixer', {
task,
context,
migrationPlan: 'personal-app-data-migration'
});
}
}typescript
async routePersonalAppDataTask(task: PersonalAppDataTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.type === 'CROSS_TAB_SYNC') {
return await this.delegateToSkill('dev-fix-task-sync', {
task,
context,
syncStrategy: 'indexeddb-broadcast-channel',
validation: 'data-consistency-check'
});
} else if (task.type === 'LOCAL_BACKUP') {
return await this.delegateToSkill('indexeddb-backup-debugger', {
task,
context,
backupStrategy: 'incremental-local-backup'
});
} else if (task.type === 'DATA_MIGRATION') {
return await this.delegateToSkill('persistence-type-fixer', {
task,
context,
migrationPlan: 'personal-app-data-migration'
});
}
}Personal Frontend Architecture Routing
个人前端架构路由
typescript
async routePersonalAppFrontendTask(task: PersonalAppFrontendTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.framework === 'vue') {
if (task.concern === 'PERFORMANCE') {
return await this.delegateToSkill('dev-optimize-performance', {
task,
context,
optimizationTarget: 'personal-app-user-experience'
});
} else if (task.concern === 'REACTIVITY') {
return await this.delegateToSkill('dev-debugging', {
task,
context,
focus: 'vue-reactivity-debugging'
});
} else if (task.concern === 'COMPONENT_DESIGN') {
return await this.delegateToSkill('dev-vue', {
task,
context,
componentType: 'personal-app-component'
});
}
}
}typescript
async routePersonalAppFrontendTask(task: PersonalAppFrontendTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.framework === 'vue') {
if (task.concern === 'PERFORMANCE') {
return await this.delegateToSkill('dev-optimize-performance', {
task,
context,
optimizationTarget: 'personal-app-user-experience'
});
} else if (task.concern === 'REACTIVITY') {
return await this.delegateToSkill('dev-debugging', {
task,
context,
focus: 'vue-reactivity-debugging'
});
} else if (task.concern === 'COMPONENT_DESIGN') {
return await this.delegateToSkill('dev-vue', {
task,
context,
componentType: 'personal-app-component'
});
}
}
}Personal App Testing & QA Routing
个人应用测试与QA路由
typescript
async routePersonalAppTestingTask(task: PersonalAppTestingTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.type === 'USER_EXPERIENCE_VALIDATION') {
return await this.delegateToSkill('qa-testing', {
task,
context,
testingScope: 'personal-app-user-workflow',
validationMethod: 'playwright-visual-testing'
});
} else if (task.type === 'UI_CONSISTENCY') {
return await this.delegateToSkill('qa-audit-ui-ux', {
task,
context,
auditScope: 'personal-app-design-system'
});
} else if (task.type === 'SYSTEM_HEALTH') {
return await this.delegateToSkill('comprehensive-system-analyzer', {
task,
context,
analysisScope: 'personal-app-health-check'
});
}
}typescript
async routePersonalAppTestingTask(task: PersonalAppTestingTask, context: PersonalAppContext): Promise<SkillResult> {
if (task.type === 'USER_EXPERIENCE_VALIDATION') {
return await this.delegateToSkill('qa-testing', {
task,
context,
testingScope: 'personal-app-user-workflow',
validationMethod: 'playwright-visual-testing'
});
} else if (task.type === 'UI_CONSISTENCY') {
return await this.delegateToSkill('qa-audit-ui-ux', {
task,
context,
auditScope: 'personal-app-design-system'
});
} else if (task.type === 'SYSTEM_HEALTH') {
return await this.delegateToSkill('comprehensive-system-analyzer', {
task,
context,
analysisScope: 'personal-app-health-check'
});
}
}Personal App Knowledge Base & Learning
个人应用知识库与学习
Personal Development Notes
个人开发笔记
- Document architectural decisions with user experience rationale
- Include alternatives considered and personal development trade-offs
- Track decision outcomes and personal productivity impact
- Maintain personal development journal for future reference
- 记录架构决策及用户体验层面的决策理由
- 包含考虑过的替代方案和个人开发的权衡因素
- 跟踪决策结果和对个人生产力的影响
- 维护个人开发日志供未来参考
Personal App Pattern Recognition
个人应用模式识别
- Identify recurring patterns in personal productivity applications
- Maintain library of proven personal app solutions
- Adapt patterns to current user experience context
- Build personal development knowledge for future projects
- 识别个人生产力应用中的重复模式
- 维护经过验证的个人应用解决方案库
- 根据当前用户体验场景调整模式
- 为未来项目积累个人开发知识
Continuous Personal Learning
持续个人学习
- Learn from every user experience implementation
- Update personal app principles based on user feedback
- Refine personal development decision frameworks
- Improve personal app recommendations over time
- Track mobile preparation and cross-platform learnings
- 从每一次用户体验实现中学习
- 根据用户反馈更新个人应用原则
- 优化个人开发决策框架
- 逐步改进个人应用推荐方案
- 跟踪移动端适配和跨平台相关的学习成果
Personal App Validation Gates
个人应用验证节点
Personal App Decision Validation
个人应用决策验证
- Alignment with user experience goals
- Personal development trade-off analysis complete
- User workflow improvement verified
- Documented in personal development notes
- 与用户体验目标保持一致
- 完成个人开发权衡分析
- 验证用户流程得到改进
- 记录在个人开发笔记中
Local Data Validation
本地数据验证
- Zero data loss verified in cross-tab testing
- Local backup procedures tested and working
- IndexedDB performance acceptable (<100ms for typical operations)
- Data recovery procedures validated
- 跨标签页测试中验证无数据丢失
- 本地备份流程测试通过且可正常工作
- IndexedDB性能达标(典型操作耗时<100ms)
- 数据恢复流程验证通过
Frontend User Experience Validation
前端用户体验验证
- TypeScript compilation successful
- Personal app user workflow tests passing
- Bundle size optimized for personal apps (<2MB)
- Lighthouse score maintained (>90 for personal productivity apps)
- TypeScript编译成功
- 个人应用用户流程测试通过
- 包体积针对个人应用优化(<2MB)
- Lighthouse分数保持达标(个人生产力应用>90分)
Cross-Platform Validation
跨平台验证
- Browser compatibility verified (Chrome, Firefox, Safari, Edge)
- Mobile responsiveness validated for common phone sizes
- Touch interactions working smoothly
- Performance acceptable on mobile devices
- 浏览器兼容性验证通过(Chrome、Firefox、Safari、Edge)
- 针对常见手机尺寸的移动端响应式验证通过
- 触摸交互流畅运行
- 移动端性能达标
Personal App Success Criteria
个人应用成功标准
- ✅ User Experience Alignment: All decisions enhance personal productivity
- ✅ Personal Knowledge Growth: Personal development knowledge base improves with each decision
- ✅ Quality Metrics: User experience, performance, and reliability improve over time
- ✅ Development Experience: Clear guidance, reduced friction, faster personal development
- ✅ App Evolution: Architecture adapts to user feedback and changing requirements
- ✅ Personal Risk Management: Proactive identification and mitigation of technical debt that impacts personal development velocity
- ✅ User Productivity: App tangibly improves personal productivity and task management
- ✅ 用户体验对齐: 所有决策均提升个人生产力
- ✅ 个人知识增长: 个人开发知识库随每一次决策不断完善
- ✅ 质量指标: 用户体验、性能和可靠性随时间提升
- ✅ 开发体验: 提供清晰指导、减少摩擦、提升个人开发速度
- ✅ 应用演进: 架构可根据用户反馈和需求变化进行适配
- ✅ 个人风险管理: 主动识别并缓解影响个人开发速度的技术债务
- ✅ 用户生产力: 应用切实提升个人生产力和任务管理效率
Personal App Usage Examples
个人应用使用示例
Example 1: Cross-Tab Synchronization Implementation
示例1:跨标签页同步实现
chief-architect implement-cross-tab-sync \
--current-stack "indexeddb/localforage" \
--sync-strategy "broadcast-channel" \
--requirements "real-time-sync,offline-first,user-experience-priority" \
--validation "playwright-cross-tab-testing"chief-architect implement-cross-tab-sync \\
--current-stack "indexeddb/localforage" \\
--sync-strategy "broadcast-channel" \\
--requirements "real-time-sync,offline-first,user-experience-priority" \\
--validation "playwright-cross-tab-testing"Example 2: Personal App Performance Optimization
示例2:个人应用性能优化
chief-architect optimize-personal-app-performance \
--analyze "src/components src/stores" \
--focus "user-experience,mobile-readiness,bundle-size" \
--target-lighthouse-score ">90" \
--validation-method "user-workflow-testing"chief-architect optimize-personal-app-performance \\
--analyze "src/components src/stores" \\
--focus "user-experience,mobile-readiness,bundle-size" \\
--target-lighthouse-score ">90" \\
--validation-method "user-workflow-testing"Example 3: Mobile Preparation Strategy
示例3:移动端适配策略
chief-architect prepare-mobile-version \
--current-platform "browser-only" \
--target-platform "browser + mobile (capacitor)" \
--quality-attributes "touch-interactions,battery-efficiency,responsive-design" \
--timeline "4-weeks"chief-architect prepare-mobile-version \\
--current-platform "browser-only" \\
--target-platform "browser + mobile (capacitor)" \\
--quality-attributes "touch-interactions,battery-efficiency,responsive-design" \\
--timeline "4-weeks"Example 4: User Experience Enhancement Planning
示例4:用户体验增强规划
chief-architect enhance-user-experience \
--analyze-user-workflow "task-management,pomodoro-timer,cross-view-synchronization" \
--focus "productivity-improvement,interface-consistency,error-handling" \
--validation "user-testing,playwright-visual-validation"chief-architect enhance-user-experience \\
--analyze-user-workflow "task-management,pomodoro-timer,cross-view-synchronization" \\
--focus "productivity-improvement,interface-consistency,error-handling" \\
--validation "user-testing,playwright-visual-validation"Example 5: Start Automatic Ideas Processing (NEW)
示例5:启动自动创意处理(新增)
chief-architect watch-ideas-file \
--auto-process "true" \
--confidence-threshold "80" \
--archive-strategy "weekly-folders"chief-architect watch-ideas-file \\
--auto-process "true" \\
--confidence-threshold "80" \\
--archive-strategy "weekly-folders"Example 6: Manual Ideas Processing (NEW)
示例6:手动创意处理(新增)
chief-architect process-ideas \
--source-file "docs/planning/overview/ideas-issues.md" \
--target-file "docs/MASTER_PLAN.md" \
--enhance-existing "true"chief-architect process-ideas \\
--source-file "docs/planning/overview/ideas-issues.md" \\
--target-file "docs/MASTER_PLAN.md" \\
--enhance-existing "true"Example 7: Stop Ideas File Watching (NEW)
示例7:停止创意文件监控(新增)
chief-architect stop-watching-ideas \
--cleanup "backup-folders"chief-architect stop-watching-ideas \\
--cleanup "backup-folders"Personal App Implementation Protocol
个人应用实现协议
1. Personal App Context Gathering
1. 个人应用背景收集
- Analyze current personal app state comprehensively
- Extract user experience requirements and personal productivity goals
- Identify technical risks that impact personal development velocity
- Consider cross-platform and mobile preparation requirements
- 全面分析当前个人应用状态
- 提取用户体验需求和个人生产力目标
- 识别影响个人开发速度的技术风险
- 考虑跨平台和移动端适配需求
2. Personal App Analysis Phase
2. 个人应用分析阶段
- Research multiple solutions optimized for single-developer projects
- Evaluate personal app trade-offs (development speed vs. user experience)
- Assess impact on user productivity and personal development workflow
- Consider mobile readiness and cross-browser compatibility
- 研究多种针对单人开发项目优化的解决方案
- 评估个人应用的权衡因素(开发速度 vs 用户体验)
- 评估对用户生产力和个人开发流程的影响
- 考虑移动端适配和跨浏览器兼容性
3. Personal App Decision Phase
3. 个人应用决策阶段
- Select optimal solution for personal app context
- Document decision with user experience rationale
- Create personal development notes and reasoning
- Update personal app knowledge base
- 选择适合个人应用场景的最优方案
- 记录决策及用户体验层面的决策理由
- 创建个人开发笔记和决策依据
- 更新个人应用知识库
4. Personal App Orchestration Phase
4. 个人应用编排阶段
- Decompose decision into manageable personal development tasks
- Build execution plan optimized for single developer workflow
- Delegate to appropriate personal app specialized skills
- Monitor progress with user experience validation
- 将决策分解为可管理的个人开发任务
- 构建针对单人开发流程优化的执行计划
- 委派给合适的个人应用专业技能模块
- 通过用户体验验证监控进度
5. Personal App Validation Phase
5. 个人应用验证阶段
- Validate implementation enhances user productivity
- Verify user experience quality metrics are maintained
- Test cross-browser compatibility and mobile responsiveness
- Document outcomes and personal development learnings
- 验证实现是否提升了用户生产力
- 确认用户体验质量指标保持达标
- 测试跨浏览器兼容性和移动端响应式
- 记录结果和个人开发学习成果
Personal App Architect Principles
个人应用架构师原则
- User Experience First: Technical decisions enhance personal productivity
- Evolutionary Design: Architecture evolves incrementally with user feedback
- Quality Attributes: Balance user experience, performance, maintainability, mobile-readiness
- Personal Developer Experience: Optimize for single-developer productivity and satisfaction
- Cross-Platform Ready: Design for browser-to-mobile portability
- User Feedback Driven: Decisions based on user experience impact and testing
- Learn and Adapt: Continuously improve from user feedback and personal development experience
- Local-First Mindset: Prioritize offline functionality and data persistence reliability
- 用户体验优先: 技术决策需提升个人生产力
- 演进式设计: 架构随用户反馈逐步演进
- 质量属性: 平衡用户体验、性能、可维护性、移动端适配性
- 个人开发者体验: 优化单人开发的生产力和满意度
- 跨平台就绪: 为浏览器到移动端的移植设计架构
- 用户反馈驱动: 基于用户体验影响和测试结果制定决策
- 学习与适配: 从用户反馈和个人开发经验中持续改进
- 本地优先思维: 优先保障离线功能和数据持久化的可靠性
Systematic Planning Integration (Integrated from arch-planning)
系统规划集成(整合自arch-planning)
Enhanced Project Planning Protocol
增强型项目规划协议
When to Use Planning Features:
何时使用规划功能:
The chief-architect now includes systematic project planning when:
- User requests "plan this feature" or "break down this task"
- Asks "how should I implement..." or "what's the approach for..."
- Needs a roadmap, architecture plan, or implementation strategy
- Mentions "complex feature", "large project", or "multi-step work"
- Wants to understand dependencies and implementation order
当用户请求以下内容时,chief-architect现在会包含系统化项目规划:
- 用户请求“规划这个功能”或“分解这个任务”
- 用户询问“我应该如何实现...”或“...的实现方法是什么”
- 需要路线图、架构计划或实现策略
- 用户提到“复杂功能”、“大型项目”或“多步骤工作”
- 用户希望了解依赖关系和实现顺序
Integrated Planning Process
集成规划流程
Phase 1: Analysis & Discovery
typescript
// Systematic project analysis
const analyzeProjectRequirements = (userRequest) => {
return {
// Codebase Context
currentArchitecture: analyzeExistingStructure(),
patterns: identifyExistingPatterns(),
conventions: extractProjectGuidelines(),
// Requirements Analysis
explicitRequirements: extractRequirements(userRequest),
implicitRequirements: identifyImplicitNeeds(),
constraints: analyzeTechnicalConstraints(),
// Dependency Mapping
affectedFiles: mapImpactAreas(),
dataFlow: analyzeDataRequirements(),
integrationPoints: identifyConnections()
}
}Phase 2: Strategic Planning
typescript
// Create implementation roadmap
const createImplementationPlan = (analysis) => {
return {
phases: breakIntoPhases(analysis),
tasks: defineSpecificTasks(),
dependencies: mapTaskDependencies(),
timeline: estimateDevelopmentTime(),
risks: identifyPotentialRisks(),
validation: defineSuccessCriteria()
}
}阶段1:分析与发现
typescript
// 系统化项目分析
const analyzeProjectRequirements = (userRequest) => {
return {
// 代码库背景
currentArchitecture: analyzeExistingStructure(),
patterns: identifyExistingPatterns(),
conventions: extractProjectGuidelines(),
// 需求分析
explicitRequirements: extractRequirements(userRequest),
implicitRequirements: identifyImplicitNeeds(),
constraints: analyzeTechnicalConstraints(),
// 依赖映射
affectedFiles: mapImpactAreas(),
dataFlow: analyzeDataRequirements(),
integrationPoints: identifyConnections()
}
}阶段2:战略规划
typescript
// 创建实现路线图
const createImplementationPlan = (analysis) => {
return {
phases: breakIntoPhases(analysis),
tasks: defineSpecificTasks(),
dependencies: mapTaskDependencies(),
timeline: estimateDevelopmentTime(),
risks: identifyPotentialRisks(),
validation: defineSuccessCriteria()
}
}Planning Templates
规划模板
Feature Implementation Template:
markdown
undefined功能实现模板:
markdown
undefinedImplementation Plan: [Feature Name]
实现计划: [功能名称]
Phase 1: Foundation
阶段1:基础准备
- Setup core data structures
- Create basic UI components
- Implement primary functionality
- 搭建核心数据结构
- 创建基础UI组件
- 实现核心功能
Phase 2: Integration
阶段2:集成
- Connect to existing stores
- Integrate with routing
- Add error handling
- 连接至现有存储
- 与路由集成
- 添加错误处理
Phase 3: Enhancement
阶段3:增强
- Add advanced features
- Implement accessibility
- Performance optimization
- 添加高级功能
- 实现可访问性
- 性能优化
Dependencies:
依赖:
- Requires: [existing features]
- Impacts: [other components]
- Timeline: [estimated duration]
- 依赖: [现有功能]
- 影响: [其他组件]
- 周期: [预计时长]
Success Criteria:
成功标准:
- Feature works as specified
- No regressions in existing functionality
- Performance within acceptable limits
- User testing validates requirements
---- 功能按需求运行
- 现有功能无回归
- 性能在可接受范围内
- 用户测试验证需求
---Personal App Meta-Architecture Pattern
个人应用元架构模式
This skill implements the Personal App Architect cognitive architecture:
- Perception: Continuously monitors personal app state, user experience metrics, and development context
- Reasoning: Analyzes user experience trade-offs, evaluates personal development options, makes decisions using systematic planning
- Action: Delegates to personal app specialized skills, validates user experience outcomes
- Learning: Updates personal development knowledge base, improves user experience recommendations
- Memory: Maintains personal app history, user experience patterns, and development decisions
- Attention: Prioritizes based on user productivity impact and personal development velocity
This creates a self-improving personal app architectural intelligence that becomes more effective over time by learning from every user experience decision, implementation, and personal development outcome.
该技能实现了个人应用架构师认知架构:
- 感知: 持续监控个人应用状态、用户体验指标和开发背景
- 推理: 分析用户体验权衡因素、评估个人开发方案、使用系统化规划制定决策
- 行动: 委派任务给个人应用专业技能模块、验证用户体验结果
- 学习: 更新个人开发知识库、改进用户体验推荐方案
- 记忆: 维护个人应用历史、用户体验模式和开发决策记录
- 注意力: 根据用户生产力影响和个人开发速度确定优先级
这创建了一个自我改进的个人应用架构智能系统,通过从每一次用户体验决策、实现和个人开发成果中学习,其效能会随时间不断提升。
MANDATORY USER VERIFICATION REQUIREMENT
强制用户验证要求
Policy: No Fix Claims Without User Confirmation
政策:无用户确认不得宣称修复完成
CRITICAL: Before claiming ANY issue, bug, or problem is "fixed", "resolved", "working", or "complete", the following verification protocol is MANDATORY:
核心要求: 在宣称任何问题、Bug或故障已“修复”、“解决”、“可正常运行”或“完成”前,必须执行以下验证协议:
Step 1: Technical Verification
步骤1:技术验证
- Run all relevant tests (build, type-check, unit tests)
- Verify no console errors
- Take screenshots/evidence of the fix
- 运行所有相关测试(构建、类型检查、单元测试)
- 确认控制台无错误
- 提供修复的截图/证据
Step 2: User Verification Request
步骤2:请求用户验证
REQUIRED: Use the tool to explicitly ask the user to verify the fix:
AskUserQuestion"I've implemented [description of fix]. Before I mark this as complete, please verify:
1. [Specific thing to check #1]
2. [Specific thing to check #2]
3. Does this fix the issue you were experiencing?
Please confirm the fix works as expected, or let me know what's still not working."必须执行: 使用工具明确请求用户验证修复效果:
AskUserQuestion"我已完成[修复内容描述]的实现。在标记为完成前,请您验证:
1. [需要检查的具体事项1]
2. [需要检查的具体事项2]
3. 这是否解决了您遇到的问题?
请确认修复是否符合预期,或告知我仍存在的问题。"Step 3: Wait for User Confirmation
步骤3:等待用户确认
- DO NOT proceed with claims of success until user responds
- DO NOT mark tasks as "completed" without user confirmation
- DO NOT use phrases like "fixed", "resolved", "working" without user verification
- 不得在用户回复前宣称成功
- 不得在无用户确认的情况下标记任务为“已完成”
- 不得在无用户验证的情况下使用“已修复”、“已解决”、“可正常运行”等表述
Step 4: Handle User Feedback
步骤4:处理用户反馈
- If user confirms: Document the fix and mark as complete
- If user reports issues: Continue debugging, repeat verification cycle
- 若用户确认: 记录修复内容并标记为完成
- 若用户报告问题: 继续调试,重复验证流程
Prohibited Actions (Without User Verification)
无用户验证时的禁止行为
- Claiming a bug is "fixed"
- Stating functionality is "working"
- Marking issues as "resolved"
- Declaring features as "complete"
- Any success claims about fixes
- 宣称Bug已“修复”
- 声明功能“可正常运行”
- 标记问题为“已解决”
- 宣称功能“已完成”
- 任何关于修复的成功声明
Required Evidence Before User Verification Request
请求用户验证前必须准备的证据
- Technical tests passing
- Visual confirmation via Playwright/screenshots
- Specific test scenarios executed
- Clear description of what was changed
Remember: The user is the final authority on whether something is fixed. No exceptions.
- 技术测试通过
- 通过Playwright/截图提供视觉确认
- 执行了具体的测试场景
- 清晰描述变更内容
请记住:用户是判断问题是否解决的最终权威。无例外。",