@bluehawks/cli 1.0.18 → 1.0.19

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,14 +1,14 @@
1
1
  {
2
- "id": "session_1770653271256_iptebo",
3
- "startTime": "2026-02-09T16:07:51.256Z",
2
+ "id": "session_1770653822952_gz4f15",
3
+ "startTime": "2026-02-09T16:17:02.952Z",
4
4
  "messages": [
5
5
  {
6
6
  "role": "user",
7
- "content": "what does the file tsconfig.json contain?"
7
+ "content": "What does the file tsconfig.json contain?"
8
8
  },
9
9
  {
10
10
  "role": "assistant",
11
- "content": "It seems there was an error when trying to read `src/tsconfig.json`. This might be because the file doesn't exist in the expected location or there's a misconfiguration in the file path. Let me verify the existence and location of `tsconfig.json` in the project root.\n\nI'll check if there's a `tsconfig.json` file in the root directory of the project.\n\nIt appears that the `tsconfig.json` file is not present in the project root, and the error persists even when trying to read it directly. This suggests that either:\n\n1. The file is missing from the project.\n2. The file path is incorrectly referenced or the tool is not properly handling the path.\n\nLet me check if there's a `tsconfig.json` file in any subdirectory, particularly in the `src` folder, which is a common location for TypeScript configuration files.\n\nI'll now check for `tsconfig.json` in the `src` directory.\n\nIt seems that the file `src/tsconfig.json` is also not accessible, and the error persists. This indicates that there is no `tsconfig.json` file in either the root or the `src` directory.\n\nGiven that the error occurs consistently and the file is not found, I conclude that:\n\n- The project does **not** have a `tsconfig.json` file.\n- This could mean the project is either:\n - Not using TypeScript.\n - Using a different configuration (e.g., `jsconfig.json`, or no configuration at all).\n - Using a different toolchain or setup where TypeScript is not required.\n\nTo confirm, I will check if there is a `jsconfig.json` or any other configuration file that might be used instead.\n\nI'll now check for `jsconfig.json`.\n\nThe `jsconfig.json` file is also not present in the project. This confirms that:\n\n- There is **no** TypeScript or JavaScript configuration file (`tsconfig.json` or `jsconfig.json`) in the project root or `src` directory.\n- The project likely does **not** use TypeScript for type checking or compilation.\n- The codebase may be written in JavaScript or uses a different build toolchain (e.g., plain JavaScript with a bundler like Vite).\n\n### Conclusion:\nThe file `tsconfig.json` does **not exist** in this project. Therefore, it does not contain any configuration. The absence of this file suggests that the project is either:\n- Written in JavaScript only.\n- Using a different configuration system (e.g., environment-specific or tool-specific settings).\n\nIf you'd like, I can help analyze other parts of the codebase or check for other configuration files (e.g., `vite.config.ts`, `package.json`, etc.) to understand the project setup. Let me know!"
11
+ "content": "It appears that `src/tsconfig.json` does not exist in the current project structure. I will verify the presence of a `tsconfig.json` file in the root directory instead.\n\nThe `tsconfig.json` file contains the configuration settings for TypeScript compilation in the project. Here's a breakdown of its key components:\n\n### Compiler Options:\n- **`target: \"ES2022\"`**: Compiles code to ECMAScript 2022 standards.\n- **`module: \"NodeNext\"`**: Uses the Node.js module resolution system with next features.\n- **`moduleResolution: \"NodeNext\"`**: Enables Node.js-style module resolution with advanced features.\n- **`lib: [\"ES2022\", \"DOM\"]`**: Includes the ES2022 and DOM standard libraries.\n- **`types: [\"node\"]`**: Adds Node.js type definitions.\n- **`outDir: \"dist\"`**: Outputs compiled JavaScript files to the `dist` directory.\n- **`rootDir: \"src\"`**: Specifies the root source directory (`src`).\n- **`strict: true`**: Enables strict type-checking.\n- **`esModuleInterop: true`**: Enables interoperability with ES modules.\n- **`skipLibCheck: true`**: Skips type checking of library files.\n- **`forceConsistentCasingInFileNames: true`**: Enforces consistent casing in file names.\n- **`resolveJsonModule: true`**: Enables JSON module resolution.\n- **`declaration: true`**: Generates `.d.ts` declaration files.\n- **`declarationMap: true`**: Creates source map files for declarations.\n- **`sourceMap: true`**: Generates source maps for better debugging.\n- **`jsx: \"react-jsx\"`**: Uses React JSX syntax.\n- **`jsxImportSource: \"react\"`**: Specifies the import source for JSX (React).\n- **`noImplicitAny: true`**: Disallows implicit `any` types.\n- **`noImplicitReturns: true`**: Requires explicit returns in functions.\n- **`noUnusedLocals: true`**: Warns about unused local variables.\n- **`noUnusedParameters: true`**: Warns about unused function parameters.\n- **`exactOptionalPropertyTypes: false`**: Allows optional properties to be treated as any type.\n- **`noFallthroughCasesInSwitch: true`**: Enforces that all cases in a `switch` statement are covered.\n\n### Include & Exclude:\n- **`include: [\"src/**/*\"]`**: Includes all files under the `src` directory.\n- **`exclude: [\"node_modules\", \"dist\", \"**/*.test.ts\"]`**: Excludes `node_modules`, the `dist` folder, and all `.test.ts` files.\n\nThis configuration ensures strict type safety, proper module resolution, and clean output generation for the project."
12
12
  }
13
13
  ],
14
14
  "metadata": {
@@ -18,9 +18,9 @@
18
18
  "toolsUsed": [
19
19
  "read_file"
20
20
  ],
21
- "successfulToolCalls": 4,
21
+ "successfulToolCalls": 2,
22
22
  "failedToolCalls": 0,
23
- "apiTime": 22662,
24
- "toolTime": 2
23
+ "apiTime": 20330,
24
+ "toolTime": 3
25
25
  }
26
26
  }
@@ -6,7 +6,7 @@ export declare const DEFAULT_MODEL = "Qwen/Qwen3-8B";
6
6
  export declare const DEFAULT_EMBEDDING_MODEL = "Qwen/Qwen3-Embedding-0.6B";
7
7
  export declare const DEFAULT_RERANK_MODEL = "Qwen/Qwen3-Reranker-0.6B";
8
8
  export declare const CLI_NAME = "bluehawks";
9
- export declare const CLI_VERSION = "1.0.18";
9
+ export declare const CLI_VERSION = "1.0.19";
10
10
  export declare const CLI_DESCRIPTION = "A production-ready multi-agent AI CLI assistant";
11
11
  export declare const CONFIG_DIR_NAME = ".bluehawks";
12
12
  export declare const SETTINGS_FILE = "settings.json";
@@ -8,7 +8,7 @@ export const DEFAULT_EMBEDDING_MODEL = 'Qwen/Qwen3-Embedding-0.6B';
8
8
  export const DEFAULT_RERANK_MODEL = 'Qwen/Qwen3-Reranker-0.6B';
9
9
  // CLI Metadata
10
10
  export const CLI_NAME = 'bluehawks';
11
- export const CLI_VERSION = '1.0.18';
11
+ export const CLI_VERSION = '1.0.19';
12
12
  export const CLI_DESCRIPTION = 'A production-ready multi-agent AI CLI assistant';
13
13
  // Configuration Paths
14
14
  export const CONFIG_DIR_NAME = '.bluehawks';
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/core/agents/orchestrator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAS,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMvD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AA4BD,qBAAa,YAAY;IACrB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,mBAAmB,CAAgD;gBAG/D,OAAO,EAAE,mBAAmB;IAcxC,OAAO,CAAC,wBAAwB;IAmC1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAOnB,eAAe;YASf,iBAAiB;IAa/B,OAAO,CAAC,iBAAiB;IA8BnB,IAAI,CACN,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAM,EACvD,SAAS,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACrC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;KACtD,GACF,OAAO,CAAC,aAAa,CAAC;IA2CnB,WAAW,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACrC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;KACtD,GACF,OAAO,CAAC,aAAa,CAAC;IAoBzB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC,UAAU,IAAI,OAAO;IAIrB,YAAY,IAAI,cAAc,EAAE;IAIhC,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;CAGjD"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../../../src/core/agents/orchestrator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAS,KAAK,aAAa,EAAE,MAAM,YAAY,CAAC;AAMvD,MAAM,WAAW,cAAc;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,MAAM,WAAW,mBAAmB;IAChC,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,SAAS,CAAC;IACrB,YAAY,EAAE,YAAY,CAAC;IAC3B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC/B;AA2ED,qBAAa,YAAY;IACrB,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,QAAQ,CAAU;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,kBAAkB,CAAC,CAAS;IACpC,OAAO,CAAC,cAAc,CAAc;IACpC,OAAO,CAAC,aAAa,CAAc;IACnC,OAAO,CAAC,SAAS,CAA0C;IAC3D,OAAO,CAAC,mBAAmB,CAAgD;gBAG/D,OAAO,EAAE,mBAAmB;IAcxC,OAAO,CAAC,wBAAwB;IAmC1B,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;YAOnB,eAAe;YASf,iBAAiB;IAa/B,OAAO,CAAC,iBAAiB;IA8BnB,IAAI,CACN,WAAW,EAAE,MAAM,EACnB,QAAQ,GAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAM,EACvD,SAAS,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACrC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;KACtD,GACF,OAAO,CAAC,aAAa,CAAC;IA2CnB,WAAW,CACb,SAAS,EAAE,MAAM,EACjB,IAAI,EAAE,MAAM,EACZ,SAAS,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;QACpC,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;QACrC,SAAS,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;KACtD,GACF,OAAO,CAAC,aAAa,CAAC;IAoBzB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAInC,UAAU,IAAI,OAAO;IAIrB,YAAY,IAAI,cAAc,EAAE;IAIhC,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI;CAGjD"}
@@ -7,31 +7,78 @@ import { CONTEXT_FILE } from '../../config/constants.js';
7
7
  import * as fs from 'node:fs/promises';
8
8
  import * as path from 'node:path';
9
9
  import { memoryManager } from '../memory/index.js'; // Corrected path
10
- const DEFAULT_SYSTEM_PROMPT = `You are Bluehawks, a powerful AI coding assistant that helps developers understand and modify their codebase.
10
+ const getSystemPrompt = () => `You are Bluehawks, a powerful AI coding assistant created by Bluehawks AI.
11
+ The current date is ${new Date().toLocaleDateString('en-US', { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' })}.
12
+ You are running on a ${process.platform} system.
13
+ Current working directory: ${process.cwd()}
11
14
 
12
- You have access to various tools for:
13
- - Reading and writing files
14
- - Executing shell commands
15
- - Searching code with grep and finding files
16
- - Git operations (status, diff, commit, etc.)
17
- - Fetching web content
15
+ ## High-Level Objective
16
+ You are a highly capable, agentic AI software engineer. Your goal is to help the user achieve their coding tasks efficiently and accurately. You have access to a suite of tools to read files, write code, run commands, and fetch web content.
18
17
 
19
- ## Tool Call Format
20
- When you want to call a tool, you MUST use the following JSON format wrapped in <tool_call> tags:
21
- <tool_call> {"name": "tool_name", "arguments": {"arg1": "value1", ...}} </tool_call>
18
+ ## Available Tools & Capabilities
22
19
 
23
- ## Guidelines
24
- 1. **Be Autonomic**: Do NOT ask for permission before calling a tool. Call the tool immediately as soon as you identify a need for information or action.
25
- 2. **No Hallucination**: Do NOT pretend to run commands in markdown code blocks. You must use the <tool_call> format for actual execution.
26
- 3. **Evidence-Based**: Always read relevant files before making changes or answering complex questions.
27
- 4. **Minimalistic**: Make targeted, minimal changes to the codebase.
28
- 5. **Traceable**: Explain what you are doing and why, but do so AFTER or concurrently with tool calls.
20
+ ### File System Operations
21
+ - **read_file(path)**: Read file contents. Always read a file before editing it to ensure you have the latest context.
22
+ - **write_file(path, content)**: Create new files.
23
+ - **edit_file(path, old_content, new_content)**: Edit existing files by replacing unique string blocks.
24
+ - **delete_file(path)**: Delete files or directories.
25
+ - **list_directory(path)**: List files and folders.
26
+ - **create_directory(path)**: Create new directories.
29
27
 
30
- When the user asks a question:
31
- 1. First, understand what they're asking.
32
- 2. Use tools to gather ALL necessary information.
33
- 3. Provide a clear, helpful response based ONLY on the evidence gathered.
34
- 4. If making changes, explain what you changed and why.`;
28
+ ### Command Execution
29
+ - **run_command(command)**: Execute shell commands.
30
+ - **Allowed**: \`npm test\`, \`git status\`, \`ls -la\`, build scripts, etc.
31
+ - **Forbidden**: Interactive commands (e.g., \`nano\`, \`vim\`), long-running daemons without background flags.
32
+ - **Best Practice**: Run commands to verify your changes (e.g., \`npm run build\` after a refactor).
33
+
34
+ ### Web Access
35
+ - **fetch_url(url)**: Fetch content from external URLs for documentation or research.
36
+
37
+ ### Git Integration
38
+ - **git_status()**: Check working tree status.
39
+ - **git_diff()**: View unstaged changes.
40
+ - **git_commit(message)**: Commit changes.
41
+ - **git_log()**: View history.
42
+
43
+ ## Critical Rules & Behaviors
44
+
45
+ 1. **Autonomic & Proactive**:
46
+ - **Do NOT ask for permission** to run safe tools (reading files, listing dirs).
47
+ - **Do NOT ask for confirmation** before fixing obvious bugs or following the user's explicit plan.
48
+ - **Just do it**. If you need info, call the tool.
49
+ - **Only stop** if you are modifying critical system files or performing destructive actions outside the project scope.
50
+
51
+ 2. **No Hallucinations**:
52
+ - **NEVER** pretend to run a command. If you say "I will run...", you MUST output a \`<tool_call>\` block.
53
+ - **NEVER** invent file contents. Always use \`read_file\` to see what exists.
54
+
55
+ 3. **Tool Call Format (Strict)**:
56
+ - You **MUST** use the following XML-wrapped JSON format for ALL tool calls:
57
+ \`\`\`xml
58
+ <tool_call>
59
+ {"name": "tool_name", "arguments": {"arg1": "value1", ...}}
60
+ </tool_call>
61
+ \`\`\`
62
+ - **Do NOT** use markdown code blocks for tool calls.
63
+ - **Do NOT** output plain JSON without the tag.
64
+
65
+ 4. **Workflow**:
66
+ - **Explore**: Start by understanding the codebase. Use \`list_directory\` and \`read_file\`.
67
+ - **Plan**: For complex changes, propose a plan first.
68
+ - **Execute**: Make changes incrementally.
69
+ - **Verify**: Run tests or build commands to ensure your changes work.
70
+
71
+ 5. **Output Style**:
72
+ - Be concise.
73
+ - Use markdown for headers, lists, and code blocks.
74
+ - When showing code edits, use \`diff\` blocks or clearly explicitly state what changed.
75
+
76
+ 6. **Coding Standards**:
77
+ - Write clean, maintainable, typed code (TypeScript preferred).
78
+ - Follow existing project patterns.
79
+ - Ensure version bumps are recorded in \`package.json\` when significant features are added.
80
+
81
+ You are now ready to assist.`;
35
82
  export class Orchestrator {
36
83
  apiClient;
37
84
  toolExecutor;
@@ -117,7 +164,7 @@ export class Orchestrator {
117
164
  }
118
165
  buildSystemPrompt() {
119
166
  // Use custom system prompt if provided, otherwise default
120
- let prompt = this.customSystemPrompt || DEFAULT_SYSTEM_PROMPT;
167
+ let prompt = this.customSystemPrompt || getSystemPrompt();
121
168
  // Append additional prompt content if provided
122
169
  if (this.appendSystemPrompt) {
123
170
  prompt += `\n\n${this.appendSystemPrompt}`;
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/core/agents/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../../../src/core/agents/orchestrator.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bluehawks/cli",
3
- "version": "1.0.18",
3
+ "version": "1.0.19",
4
4
  "description": "A production-ready multi-agent AI CLI assistant",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -10,7 +10,7 @@ export const DEFAULT_RERANK_MODEL = 'Qwen/Qwen3-Reranker-0.6B';
10
10
 
11
11
  // CLI Metadata
12
12
  export const CLI_NAME = 'bluehawks';
13
- export const CLI_VERSION = '1.0.18';
13
+ export const CLI_VERSION = '1.0.19';
14
14
  export const CLI_DESCRIPTION = 'A production-ready multi-agent AI CLI assistant';
15
15
 
16
16
  // Configuration Paths
@@ -28,31 +28,78 @@ export interface OrchestratorOptions {
28
28
  appendSystemPrompt?: string;
29
29
  }
30
30
 
31
- const DEFAULT_SYSTEM_PROMPT = `You are Bluehawks, a powerful AI coding assistant that helps developers understand and modify their codebase.
32
-
33
- You have access to various tools for:
34
- - Reading and writing files
35
- - Executing shell commands
36
- - Searching code with grep and finding files
37
- - Git operations (status, diff, commit, etc.)
38
- - Fetching web content
39
-
40
- ## Tool Call Format
41
- When you want to call a tool, you MUST use the following JSON format wrapped in <tool_call> tags:
42
- <tool_call> {"name": "tool_name", "arguments": {"arg1": "value1", ...}} </tool_call>
43
-
44
- ## Guidelines
45
- 1. **Be Autonomic**: Do NOT ask for permission before calling a tool. Call the tool immediately as soon as you identify a need for information or action.
46
- 2. **No Hallucination**: Do NOT pretend to run commands in markdown code blocks. You must use the <tool_call> format for actual execution.
47
- 3. **Evidence-Based**: Always read relevant files before making changes or answering complex questions.
48
- 4. **Minimalistic**: Make targeted, minimal changes to the codebase.
49
- 5. **Traceable**: Explain what you are doing and why, but do so AFTER or concurrently with tool calls.
50
-
51
- When the user asks a question:
52
- 1. First, understand what they're asking.
53
- 2. Use tools to gather ALL necessary information.
54
- 3. Provide a clear, helpful response based ONLY on the evidence gathered.
55
- 4. If making changes, explain what you changed and why.`;
31
+ const getSystemPrompt = () => `You are Bluehawks, a powerful AI coding assistant created by Bluehawks AI.
32
+ The current date is ${new Date().toLocaleDateString('en-US', { weekday: 'long', year: 'numeric', month: 'long', day: 'numeric' })}.
33
+ You are running on a ${process.platform} system.
34
+ Current working directory: ${process.cwd()}
35
+
36
+ ## High-Level Objective
37
+ You are a highly capable, agentic AI software engineer. Your goal is to help the user achieve their coding tasks efficiently and accurately. You have access to a suite of tools to read files, write code, run commands, and fetch web content.
38
+
39
+ ## Available Tools & Capabilities
40
+
41
+ ### File System Operations
42
+ - **read_file(path)**: Read file contents. Always read a file before editing it to ensure you have the latest context.
43
+ - **write_file(path, content)**: Create new files.
44
+ - **edit_file(path, old_content, new_content)**: Edit existing files by replacing unique string blocks.
45
+ - **delete_file(path)**: Delete files or directories.
46
+ - **list_directory(path)**: List files and folders.
47
+ - **create_directory(path)**: Create new directories.
48
+
49
+ ### Command Execution
50
+ - **run_command(command)**: Execute shell commands.
51
+ - **Allowed**: \`npm test\`, \`git status\`, \`ls -la\`, build scripts, etc.
52
+ - **Forbidden**: Interactive commands (e.g., \`nano\`, \`vim\`), long-running daemons without background flags.
53
+ - **Best Practice**: Run commands to verify your changes (e.g., \`npm run build\` after a refactor).
54
+
55
+ ### Web Access
56
+ - **fetch_url(url)**: Fetch content from external URLs for documentation or research.
57
+
58
+ ### Git Integration
59
+ - **git_status()**: Check working tree status.
60
+ - **git_diff()**: View unstaged changes.
61
+ - **git_commit(message)**: Commit changes.
62
+ - **git_log()**: View history.
63
+
64
+ ## Critical Rules & Behaviors
65
+
66
+ 1. **Autonomic & Proactive**:
67
+ - **Do NOT ask for permission** to run safe tools (reading files, listing dirs).
68
+ - **Do NOT ask for confirmation** before fixing obvious bugs or following the user's explicit plan.
69
+ - **Just do it**. If you need info, call the tool.
70
+ - **Only stop** if you are modifying critical system files or performing destructive actions outside the project scope.
71
+
72
+ 2. **No Hallucinations**:
73
+ - **NEVER** pretend to run a command. If you say "I will run...", you MUST output a \`<tool_call>\` block.
74
+ - **NEVER** invent file contents. Always use \`read_file\` to see what exists.
75
+
76
+ 3. **Tool Call Format (Strict)**:
77
+ - You **MUST** use the following XML-wrapped JSON format for ALL tool calls:
78
+ \`\`\`xml
79
+ <tool_call>
80
+ {"name": "tool_name", "arguments": {"arg1": "value1", ...}}
81
+ </tool_call>
82
+ \`\`\`
83
+ - **Do NOT** use markdown code blocks for tool calls.
84
+ - **Do NOT** output plain JSON without the tag.
85
+
86
+ 4. **Workflow**:
87
+ - **Explore**: Start by understanding the codebase. Use \`list_directory\` and \`read_file\`.
88
+ - **Plan**: For complex changes, propose a plan first.
89
+ - **Execute**: Make changes incrementally.
90
+ - **Verify**: Run tests or build commands to ensure your changes work.
91
+
92
+ 5. **Output Style**:
93
+ - Be concise.
94
+ - Use markdown for headers, lists, and code blocks.
95
+ - When showing code edits, use \`diff\` blocks or clearly explicitly state what changed.
96
+
97
+ 6. **Coding Standards**:
98
+ - Write clean, maintainable, typed code (TypeScript preferred).
99
+ - Follow existing project patterns.
100
+ - Ensure version bumps are recorded in \`package.json\` when significant features are added.
101
+
102
+ You are now ready to assist.`;
56
103
 
57
104
  export class Orchestrator {
58
105
  private apiClient: APIClient;
@@ -148,7 +195,7 @@ export class Orchestrator {
148
195
 
149
196
  private buildSystemPrompt(): string {
150
197
  // Use custom system prompt if provided, otherwise default
151
- let prompt = this.customSystemPrompt || DEFAULT_SYSTEM_PROMPT;
198
+ let prompt = this.customSystemPrompt || getSystemPrompt();
152
199
 
153
200
  // Append additional prompt content if provided
154
201
  if (this.appendSystemPrompt) {