feat: 品牌替换 + 启动优化 + AGENTS.md 模板定制
- 品牌替换:OpenCode/opencode → AirCoding/aircoding(16+ 文件) - Logo ASCII art:修复 left/right 行数不匹配导致的启动崩溃 - 启动诊断:添加 OPENCODE_PRINT_TIMING 计时探针 - dev 模式默认 --pure 跳过外部插件加载 - AGENTS.md 模板:追加 AirCoding 多 Agent 专项段落 - architect prompt + plugin:强化 AGENTS.md 产出验证
This commit is contained in:
47
packages/storybook/.storybook/mocks/app/context/file.ts
Normal file
47
packages/storybook/.storybook/mocks/app/context/file.ts
Normal file
@@ -0,0 +1,47 @@
|
||||
export type FileSelection = {
|
||||
startLine: number
|
||||
startChar: number
|
||||
endLine: number
|
||||
endChar: number
|
||||
}
|
||||
|
||||
export type SelectedLineRange = {
|
||||
start: number
|
||||
end: number
|
||||
}
|
||||
|
||||
export function selectionFromLines(selection?: SelectedLineRange): FileSelection | undefined {
|
||||
if (!selection) return undefined
|
||||
return {
|
||||
startLine: selection.start,
|
||||
startChar: 0,
|
||||
endLine: selection.end,
|
||||
endChar: 0,
|
||||
}
|
||||
}
|
||||
|
||||
const pool = [
|
||||
"src/session/timeline.tsx",
|
||||
"src/session/composer.tsx",
|
||||
"src/components/prompt-input.tsx",
|
||||
"src/components/session-todo-dock.tsx",
|
||||
"README.md",
|
||||
]
|
||||
|
||||
export function useFile() {
|
||||
return {
|
||||
tab(path: string) {
|
||||
return `file:${path}`
|
||||
},
|
||||
pathFromTab(tab: string) {
|
||||
if (!tab.startsWith("file:")) return ""
|
||||
return tab.slice(5)
|
||||
},
|
||||
load: async () => undefined,
|
||||
async searchFilesAndDirectories(query: string) {
|
||||
const text = query.trim().toLowerCase()
|
||||
if (!text) return pool
|
||||
return pool.filter((path) => path.toLowerCase().includes(text))
|
||||
},
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user