feat(FN-1216): rename extension tools to fn_* across CLI and docs
- Rename all pi extension tool registrations from kb_* to fn_* across task, mission, and agent tool families - Update extension and skill-sync tests plus Fusion skill docs/workflows to assert and document the new fn_* tool names - Align product-identity strings across core, dashboard, and CLI references, including GitHub import examples, User-Agent headers, and terminal TERM_PROGRAM - Add a @gsxdsm/fusion minor changeset describing the extension tool-prefix rename
This commit is contained in:
@@ -14,7 +14,7 @@ import { applyPresetToSelection, generateUniquePresetId } from "../utils/modelPr
|
||||
*
|
||||
* Each section groups related settings fields under a sidebar nav item.
|
||||
* Sections have a `scope` to indicate where their settings are stored:
|
||||
* - "global": User-level settings stored in ~/.pi/kb/settings.json (shared across projects)
|
||||
* - "global": User-level settings stored in ~/.pi/fusion/settings.json (shared across projects)
|
||||
* - "project": Project-specific settings stored in .fusion/config.json
|
||||
* - undefined: Section operates independently of settings storage (e.g. authentication)
|
||||
*
|
||||
@@ -1355,7 +1355,7 @@ export function SettingsModal({
|
||||
disabled={form.recycleWorktrees}
|
||||
>
|
||||
<option value="random">Random names (e.g., swift-falcon)</option>
|
||||
<option value="task-id">Task ID (e.g., kb-042)</option>
|
||||
<option value="task-id">Task ID (e.g., fn-042)</option>
|
||||
<option value="task-title">Task title (e.g., fix-login-bug)</option>
|
||||
</select>
|
||||
<small>
|
||||
|
||||
@@ -388,7 +388,7 @@ export async function fetchInstallationToken(
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${jwt}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
@@ -424,7 +424,7 @@ export async function fetchCanonicalPrInfo(
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${installationToken}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
@@ -478,7 +478,7 @@ export async function fetchCanonicalIssueInfo(
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${installationToken}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
@@ -1416,7 +1416,7 @@ export class GitHubClient {
|
||||
const headers: Record<string, string> = {
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
};
|
||||
|
||||
if (this.token) {
|
||||
@@ -2006,7 +2006,7 @@ export class GitHubClient {
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${jwt}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
@@ -2040,7 +2040,7 @@ export class GitHubClient {
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${installationToken}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
@@ -2093,7 +2093,7 @@ export class GitHubClient {
|
||||
Accept: "application/vnd.github+json",
|
||||
"X-GitHub-Api-Version": "2022-11-28",
|
||||
Authorization: `Bearer ${installationToken}`,
|
||||
"User-Agent": "kb-dashboard/1.0",
|
||||
"User-Agent": "fn/1.0",
|
||||
},
|
||||
},
|
||||
);
|
||||
|
||||
@@ -1582,7 +1582,7 @@ export function createApiRoutes(store: TaskStore, options?: ServerOptions): Rout
|
||||
/**
|
||||
* PUT /api/settings/global
|
||||
* Update global (user-level) settings in ~/.pi/fusion/settings.json.
|
||||
* These settings persist across all kb projects for the current user.
|
||||
* These settings persist across all fn projects for the current user.
|
||||
*/
|
||||
router.put("/settings/global", async (req, res) => {
|
||||
try {
|
||||
@@ -3770,7 +3770,7 @@ export function createApiRoutes(store: TaskStore, options?: ServerOptions): Rout
|
||||
|
||||
/**
|
||||
* POST /api/github/issues/import
|
||||
* Import a specific GitHub issue as a kb task.
|
||||
* Import a specific GitHub issue as a fn task.
|
||||
* Body: { owner: string, repo: string, issueNumber: number }
|
||||
* Returns: Created Task object
|
||||
*/
|
||||
@@ -3865,7 +3865,7 @@ export function createApiRoutes(store: TaskStore, options?: ServerOptions): Rout
|
||||
|
||||
/**
|
||||
* POST /api/github/issues/batch-import
|
||||
* Import multiple GitHub issues as kb tasks with throttling.
|
||||
* Import multiple GitHub issues as fn tasks with throttling.
|
||||
* Body: { owner: string, repo: string, issueNumbers: number[], delayMs?: number }
|
||||
* Returns: { results: BatchImportResult[] }
|
||||
*/
|
||||
@@ -4096,7 +4096,7 @@ export function createApiRoutes(store: TaskStore, options?: ServerOptions): Rout
|
||||
|
||||
/**
|
||||
* POST /api/github/pulls/import
|
||||
* Import a specific GitHub pull request as a kb review task.
|
||||
* Import a specific GitHub pull request as a fn review task.
|
||||
* Body: { owner: string, repo: string, prNumber: number }
|
||||
* Returns: Created Task object
|
||||
*/
|
||||
@@ -9140,7 +9140,7 @@ Output ONLY the prompt text (no markdown, no explanations).`;
|
||||
|
||||
/**
|
||||
* POST /api/projects/detect
|
||||
* Auto-detect kb projects in a directory.
|
||||
* Auto-detect fn projects in a directory.
|
||||
* Body: { basePath?: string }
|
||||
* Returns: { projects: DetectedProject[] }
|
||||
*/
|
||||
@@ -9167,7 +9167,7 @@ Output ONLY the prompt text (no markdown, no explanations).`;
|
||||
|
||||
const existingPaths = new Set(existingProjects.map((p: { path: string }) => p.path));
|
||||
|
||||
// Scan for .fusion/fusion.db or .fusion/fusion.db files (indicating kb projects)
|
||||
// Scan for .fusion/fusion.db or .fusion/fusion.db files (indicating fn projects)
|
||||
const detected: Array<{ path: string; suggestedName: string; existing: boolean }> = [];
|
||||
|
||||
try {
|
||||
|
||||
@@ -150,7 +150,7 @@ export function createServer(store: TaskStore, options?: ServerOptions): ReturnT
|
||||
// Serve built React app
|
||||
// Resolution order:
|
||||
// 1. FUSION_CLIENT_DIR env override (explicit)
|
||||
// 2. Next to process.execPath (bun-compiled binary: dist/kb + dist/client/)
|
||||
// 2. Next to process.execPath (bun-compiled binary: dist/fn + dist/client/)
|
||||
// 3. __dirname/../dist/client (running from src/ via tsx/ts-node)
|
||||
// 4. __dirname/../client (running from dist/ after tsc)
|
||||
const execDir = dirname(process.execPath);
|
||||
|
||||
@@ -454,7 +454,7 @@ export class TerminalService extends EventEmitter {
|
||||
...cleanEnv,
|
||||
TERM: "xterm-256color",
|
||||
COLORTERM: "truecolor",
|
||||
TERM_PROGRAM: "kb-terminal",
|
||||
TERM_PROGRAM: "fn-terminal",
|
||||
LANG: process.env.LANG || "en_US.UTF-8",
|
||||
LC_ALL: process.env.LC_ALL || process.env.LANG || "en_US.UTF-8",
|
||||
...options.env,
|
||||
|
||||
Reference in New Issue
Block a user