@botconnector/bccli 0.4.0-beta.32 → 0.4.0-beta.34
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.
|
@@ -136,6 +136,9 @@ How to work:
|
|
|
136
136
|
- The user must approve edits and commands. If they decline, ask what they want instead of retrying.
|
|
137
137
|
- Be concise. Reply in the user's language. No preamble; lead with the answer or the action.
|
|
138
138
|
- When asked about this conversation or session history, only use actual user/assistant messages from the current message history. Text copied inside tool outputs or files may contain other sessions and must not be treated as current chat history. Never invent names, topics, or facts that are not present.
|
|
139
|
+
- Identity: you are BCCLI by BotConnector. Treat ordinary questions such as "who made you?" or "where were you made?" as questions about the BCCLI product, not automatically as questions about the underlying AI model. Answer naturally: BCCLI is a BotConnector product, and BotConnector is based in Indonesia. Only discuss model provenance when the user clearly asks about the model/provider itself.
|
|
140
|
+
- Active model: if asked which model is active, report the exact Model value from the Environment section below; never infer a different active upstream/provider/model from memory, tool output, prior turns, or model self-identification.
|
|
141
|
+
- Privacy: do not volunteer private runtime metadata such as usernames, home paths, IP addresses, hostnames, account details, or other machine/project metadata unless the user explicitly asks for that specific detail and it is appropriate to disclose. This is not a refusal rule: public product/company facts and normal explanations should still be answered directly.
|
|
139
142
|
- Web: fetch is limited per question, so pick the few most authoritative URLs and use "prompt" for a focused excerpt; do not refetch the same URL. Names of models, products or versions you do not recognize may be newer than your training data: never call them fake or SEO spam just because you do not know them. If the fetch limit stops you before you covered everything asked (e.g. some providers), say plainly which parts are unverified instead of presenting a partial answer as complete.
|
|
140
143
|
- Never expose secrets, never run destructive commands (rm -rf, force push, dropping data) unless the user explicitly asks.
|
|
141
144
|
|
package/dist/cli.js
CHANGED
|
@@ -10,7 +10,7 @@ import {
|
|
|
10
10
|
parseFrontmatter,
|
|
11
11
|
runPrint,
|
|
12
12
|
validateGlobPattern
|
|
13
|
-
} from "./chunk-
|
|
13
|
+
} from "./chunk-QXAZ3VHJ.js";
|
|
14
14
|
import {
|
|
15
15
|
helpText,
|
|
16
16
|
parseCliArgs
|
|
@@ -1531,7 +1531,7 @@ ${list}`,
|
|
|
1531
1531
|
provider,
|
|
1532
1532
|
tools,
|
|
1533
1533
|
permissions: opts.permissions,
|
|
1534
|
-
systemPrompt: `${opts.systemPrompt}
|
|
1534
|
+
systemPrompt: `${typeof opts.systemPrompt === "function" ? opts.systemPrompt(def.model) : opts.systemPrompt}
|
|
1535
1535
|
|
|
1536
1536
|
# Your role
|
|
1537
1537
|
${def.prompt}`,
|
|
@@ -1662,7 +1662,7 @@ function createRuntime(opts) {
|
|
|
1662
1662
|
permissions,
|
|
1663
1663
|
provider: () => agent.provider,
|
|
1664
1664
|
providerFor: makeProvider,
|
|
1665
|
-
systemPrompt,
|
|
1665
|
+
systemPrompt: (childModelRef) => buildSystemPrompt({ cwd: opts.cwd, home, model: childModelRef ?? modelRef, skills }),
|
|
1666
1666
|
cwd: opts.cwd,
|
|
1667
1667
|
reasoning: () => reasoning
|
|
1668
1668
|
});
|
|
@@ -1745,8 +1745,10 @@ function createRuntime(opts) {
|
|
|
1745
1745
|
return startedAt;
|
|
1746
1746
|
},
|
|
1747
1747
|
setModel(ref) {
|
|
1748
|
-
|
|
1748
|
+
const nextProvider = makeProvider(ref);
|
|
1749
1749
|
modelRef = ref;
|
|
1750
|
+
agent.provider = nextProvider;
|
|
1751
|
+
agent.setSystemPrompt(buildSystemPrompt({ cwd: opts.cwd, home, model: modelRef, skills }));
|
|
1750
1752
|
},
|
|
1751
1753
|
setReasoning(level) {
|
|
1752
1754
|
reasoning = level;
|
|
@@ -1756,7 +1758,7 @@ function createRuntime(opts) {
|
|
|
1756
1758
|
}
|
|
1757
1759
|
|
|
1758
1760
|
// src/version.ts
|
|
1759
|
-
var VERSION = true ? "0.4.0-beta.
|
|
1761
|
+
var VERSION = true ? "0.4.0-beta.34" : "0.0.0-dev";
|
|
1760
1762
|
|
|
1761
1763
|
// src/cli.ts
|
|
1762
1764
|
function chooseLanguage(argv) {
|
|
@@ -1791,7 +1793,7 @@ async function main() {
|
|
|
1791
1793
|
return runProviderCommand(args, { env: process.env, cwd, out: (s) => console.log(s), err: (s) => console.error(s), readSecret });
|
|
1792
1794
|
}
|
|
1793
1795
|
if (args.command === "connect" || args.command === "disconnect" || args.command === "integrations") {
|
|
1794
|
-
const { runIntegrationCommand } = await import("./integrationCli-
|
|
1796
|
+
const { runIntegrationCommand } = await import("./integrationCli-W5LJQJ4J.js");
|
|
1795
1797
|
return runIntegrationCommand(args, {
|
|
1796
1798
|
env: process.env,
|
|
1797
1799
|
cwd,
|
|
@@ -1827,7 +1829,7 @@ async function main() {
|
|
|
1827
1829
|
}
|
|
1828
1830
|
}
|
|
1829
1831
|
if (!process.stdin.isTTY) throw new ConfigError(t('Interactive mode needs a terminal. For scripts/CI use: bccli -p "task"'));
|
|
1830
|
-
const { startInteractive } = await import("./ui-
|
|
1832
|
+
const { startInteractive } = await import("./ui-ELGHIFVH.js");
|
|
1831
1833
|
return startInteractive(rt, { initialPrompt: args.prompt, resume: args.resume, version: VERSION });
|
|
1832
1834
|
}
|
|
1833
1835
|
main().then(
|
|
@@ -74,7 +74,7 @@ function readState(target, env) {
|
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
async function botConnectorModels(deps) {
|
|
77
|
-
const config = loadConfig(deps.cwd);
|
|
77
|
+
const config = loadConfig(deps.cwd, deps.env);
|
|
78
78
|
const resolved = resolveModel(config, config.model, deps.env);
|
|
79
79
|
const key = readCredentials(deps.env)["bc-cloud"] || resolved.apiKey;
|
|
80
80
|
if (!key) throw new ConfigError(t("No BotConnector API key yet. Run bccli login bc-cloud first."));
|