- beautifului.dev 组件直连:Sidebar Nav、Tool Chips、Approval Card(抽屉化)、Streaming/Thinking、Code Block、Selection Actions、Prompt Bar、Search
33 lines
1.2 KiB
JavaScript
33 lines
1.2 KiB
JavaScript
// 检查 pi-coding-agent 的 SessionManager / AgentSession 类型定义,确认会话落盘时机
|
|
import { readdirSync, readFileSync, existsSync } from 'node:fs'
|
|
|
|
const pnpm = new URL('../node_modules/.pnpm/', import.meta.url)
|
|
const dir = readdirSync(pnpm).find((d) => d.startsWith('@earendil-works+pi-coding-agent@'))
|
|
if (!dir) throw new Error('pi-coding-agent not found')
|
|
const dist = new URL(`${dir}/node_modules/@earendil-works/pi-coding-agent/dist/`, pnpm)
|
|
console.log('dist exists:', existsSync(dist))
|
|
|
|
// 在 dist 里 grep 关键定义
|
|
const { execSync } = await import('node:child_process')
|
|
const distPath = new URL('.', dist).pathname.replace(/^\/([A-Za-z]:)/, '$1')
|
|
const grep = (pattern) => {
|
|
try {
|
|
const out = execSync(
|
|
`findstr /s /n /c:"${pattern}" "${distPath}*.d.ts"`,
|
|
{ encoding: 'utf8', maxBuffer: 10 * 1024 * 1024 }
|
|
)
|
|
console.log(`\n=== ${pattern} ===`)
|
|
console.log(out.split('\n').slice(0, 40).join('\n'))
|
|
} catch (e) {
|
|
console.log(`\n=== ${pattern} === (no match)`)
|
|
}
|
|
}
|
|
|
|
grep('static list(')
|
|
grep('sessionFile')
|
|
grep('get sessionName')
|
|
grep('setSessionName')
|
|
grep('static continueRecent')
|
|
grep('class SessionManager')
|
|
grep('interface SessionInfo')
|