free-pi-cli 0.5.1 → 0.5.3
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.
- package/dist/index.js +1 -1
- package/dist/{main-ha56pd31.js → main-zgz9as8b.js} +40 -12
- package/package.json +1 -1
- package/skills/{security-audit → freepi-security-audit}/SKILL.md +1 -1
- /package/skills/{security-audit → freepi-security-audit}/AI-AND-LLM.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/ATTACK-CLASSES.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/CLIENT-SIDE.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/CLOUD-AND-DEPLOYMENT.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/DATA-ISOLATION-AND-LIFECYCLE.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/DESKTOP-MOBILE-AND-LOCAL-IPC.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/HUNTING.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/LICENSE +0 -0
- /package/skills/{security-audit → freepi-security-audit}/MEMORY-SAFETY-AND-BINARY.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/PROTOCOLS-RPC-AND-MESSAGING.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/RECONNAISSANCE.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/RESOURCE-EXHAUSTION-AND-AVAILABILITY.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/SUPPLY-CHAIN-AND-RELEASE.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/UPSTREAM.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/VALIDATION-AND-REPORTING.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/WEB-PROTOCOL-AND-AUTH.md +0 -0
- /package/skills/{security-audit → freepi-security-audit}/report-schema.json +0 -0
- /package/skills/{security-audit → freepi-security-audit}/validate-coverage-ledger.cjs +0 -0
- /package/skills/{security-audit → freepi-security-audit}/validate-findings.cjs +0 -0
package/dist/index.js
CHANGED
|
@@ -14940,7 +14940,7 @@ var HiveClassifyResponseSchema = exports_external.object({
|
|
|
14940
14940
|
// package.json
|
|
14941
14941
|
var package_default = {
|
|
14942
14942
|
name: "free-pi-cli",
|
|
14943
|
-
version: "0.5.
|
|
14943
|
+
version: "0.5.3",
|
|
14944
14944
|
description: "Free, ad-supported distribution of the pi coding agent. Inference paid for by ads.",
|
|
14945
14945
|
license: "MIT",
|
|
14946
14946
|
type: "module",
|
|
@@ -20852,6 +20852,7 @@ function createToolGuardExtension(opts) {
|
|
|
20852
20852
|
// src/bug-report.ts
|
|
20853
20853
|
var BUG_USAGE = "Usage: /bug <what went wrong>";
|
|
20854
20854
|
var BUG_DESCRIPTION = "Report a bug to free-pi";
|
|
20855
|
+
var LOGIN_DESCRIPTION = "Sign in with GitHub to unlock daily credits and a comeback bonus.";
|
|
20855
20856
|
function buildBugRequest(description, ctx) {
|
|
20856
20857
|
return { description, session_id: ctx.sessionId, cli_version: CLI_VERSION, model: ctx.model };
|
|
20857
20858
|
}
|
|
@@ -20909,7 +20910,7 @@ function registerBugAutocomplete(pi) {
|
|
|
20909
20910
|
const r = await cur.getSuggestions(...a);
|
|
20910
20911
|
return r && {
|
|
20911
20912
|
...r,
|
|
20912
|
-
items: r.items.map((i) => i.value === "bug"
|
|
20913
|
+
items: r.items.map((i) => i.label === i.value && i.value === "bug" ? { ...i, description: BUG_DESCRIPTION } : i.label === i.value && i.value === "login" ? { ...i, description: LOGIN_DESCRIPTION } : i)
|
|
20913
20914
|
};
|
|
20914
20915
|
}
|
|
20915
20916
|
}));
|
|
@@ -20976,6 +20977,17 @@ function mergeAttribution(a, b) {
|
|
|
20976
20977
|
|
|
20977
20978
|
// src/changelog.ts
|
|
20978
20979
|
var CHANGELOG_HIGHLIGHTS = [
|
|
20980
|
+
{
|
|
20981
|
+
version: "0.5.3",
|
|
20982
|
+
highlights: [
|
|
20983
|
+
"No more startup warning about /login.",
|
|
20984
|
+
"The bundled audit skill is now freepi-security-audit, so it no longer clashes with Cloudflare's security-audit skill."
|
|
20985
|
+
]
|
|
20986
|
+
},
|
|
20987
|
+
{
|
|
20988
|
+
version: "0.5.2",
|
|
20989
|
+
highlights: ["/model now lists Defense Flash right under Fusion."]
|
|
20990
|
+
},
|
|
20979
20991
|
{
|
|
20980
20992
|
version: "0.5.1",
|
|
20981
20993
|
highlights: [
|
|
@@ -21668,8 +21680,6 @@ async function openPrivacyPolicy(opts, ctx) {
|
|
|
21668
21680
|
ctx.ui.notify(`Opening the Privacy Policy in your browser: ${PRIVACY_URL}`, "info");
|
|
21669
21681
|
}
|
|
21670
21682
|
async function runLogin(opts, ctx) {
|
|
21671
|
-
ctx.ui.notify("Sign in with GitHub to get 15,000 free credits a day.", "info");
|
|
21672
|
-
ctx.ui.notify(LOGIN_BONUS_UNLOCK_LINE, "info");
|
|
21673
21683
|
try {
|
|
21674
21684
|
const attribution = opts.agentDir ? await loadAttribution(getAttributionPath(opts.agentDir)) : {};
|
|
21675
21685
|
const token = await runDeviceLogin({
|
|
@@ -21692,6 +21702,22 @@ async function runLogin(opts, ctx) {
|
|
|
21692
21702
|
ctx.ui.notify("Couldn't finish GitHub sign-in. Run /login to try again.", "error");
|
|
21693
21703
|
}
|
|
21694
21704
|
}
|
|
21705
|
+
function installLoginHandler(mode, opts) {
|
|
21706
|
+
const m = mode;
|
|
21707
|
+
mode.handleLoginCommand = () => {
|
|
21708
|
+
const lines = [];
|
|
21709
|
+
const notify = (message, type) => {
|
|
21710
|
+
if (type === "error")
|
|
21711
|
+
return m.showError(message);
|
|
21712
|
+
if (type === "warning")
|
|
21713
|
+
return m.showWarning(message);
|
|
21714
|
+
lines.push(message);
|
|
21715
|
+
m.showStatus(lines.join(`
|
|
21716
|
+
`));
|
|
21717
|
+
};
|
|
21718
|
+
return runLogin(opts, { ui: { notify } });
|
|
21719
|
+
};
|
|
21720
|
+
}
|
|
21695
21721
|
async function showUsage(opts, ctx) {
|
|
21696
21722
|
const r = await fetchUsageText(opts);
|
|
21697
21723
|
ctx.ui.notify(r.text, r.ok ? "info" : "error");
|
|
@@ -21827,10 +21853,6 @@ function createFreePiCommandsExtension(opts) {
|
|
|
21827
21853
|
description: "Update free-pi-cli to the latest version.",
|
|
21828
21854
|
handler: (_args, ctx) => runUpdate(ctx)
|
|
21829
21855
|
});
|
|
21830
|
-
pi.registerCommand("login", {
|
|
21831
|
-
description: "Sign in with GitHub to unlock daily credits and a comeback bonus.",
|
|
21832
|
-
handler: (_args, ctx) => runLogin(opts, ctx)
|
|
21833
|
-
});
|
|
21834
21856
|
pi.registerCommand("usage", {
|
|
21835
21857
|
description: "Show credits left today, refill time, and purchased credit.",
|
|
21836
21858
|
handler: (_args, ctx) => showUsage(opts, ctx)
|
|
@@ -23894,10 +23916,10 @@ process.env.PI_SKIP_VERSION_CHECK = "1";
|
|
|
23894
23916
|
process.env.PI_TELEMETRY = "0";
|
|
23895
23917
|
patchResumeLine(process.stdout);
|
|
23896
23918
|
function pickerScopeFor(modelRuntime, opts) {
|
|
23897
|
-
|
|
23898
|
-
|
|
23899
|
-
|
|
23900
|
-
];
|
|
23919
|
+
const main = resolveFreePiScope(modelRuntime, PROVIDER_NAME, catalogModelsFor(opts).map((m) => m.id));
|
|
23920
|
+
const defense = resolveFreePiScope(modelRuntime, DEFENSE_PROVIDER_NAME, defenseModelsFor(opts).map((m) => m.id));
|
|
23921
|
+
const fusion = main.filter((s) => s.model.id === FUSION_PICKER_ID);
|
|
23922
|
+
return [...fusion, ...defense, ...main.filter((s) => !fusion.includes(s))];
|
|
23901
23923
|
}
|
|
23902
23924
|
async function launchPi(opts) {
|
|
23903
23925
|
const cwd = process.cwd();
|
|
@@ -23941,6 +23963,12 @@ async function launchPi(opts) {
|
|
|
23941
23963
|
initialMessages: []
|
|
23942
23964
|
});
|
|
23943
23965
|
installBugHandler(mode, { baseUrl: opts.baseUrl, getToken: () => opts.jwt });
|
|
23966
|
+
installLoginHandler(mode, {
|
|
23967
|
+
baseUrl: opts.baseUrl,
|
|
23968
|
+
getToken: () => opts.jwt,
|
|
23969
|
+
credentialsPath: opts.credentialsPath,
|
|
23970
|
+
agentDir: opts.agentDir
|
|
23971
|
+
});
|
|
23944
23972
|
installFooterRightAlign(mode);
|
|
23945
23973
|
await mode.run();
|
|
23946
23974
|
return sm.getSessionId();
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
---
|
|
2
|
-
name: security-audit
|
|
2
|
+
name: freepi-security-audit
|
|
3
3
|
description: Security guidance and vulnerability review for codebases, APIs, services, CLI tools, libraries, and daemons. Use for security questions, focused reviews, vulnerability research, security audits, or pen tests. Run the complete workflow only for explicit codebase audit or pen-test requests, full/comprehensive/end-to-end reviews, or requested report artifacts. Runs entirely in one agent, in the main thread; it never uses sub-agents.
|
|
4
4
|
---
|
|
5
5
|
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
/package/skills/{security-audit → freepi-security-audit}/RESOURCE-EXHAUSTION-AND-AVAILABILITY.md
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|