This commit is contained in:
Kopatz
2025-10-21 17:47:05 +02:00
parent e440985c34
commit 6e7cda47e4
6 changed files with 70 additions and 3 deletions

13
pkgs/answer/default.nix Normal file
View File

@@ -0,0 +1,13 @@
{ stdenv, nodejs, ... }:
stdenv.mkDerivation rec {
pname = "answer";
version = "1.0";
src = ./src;
nativeBuildInputs = [ nodejs ];
installPhase = ''
mkdir -p $out/bin
cp $src/answer.js $out/bin/answer
chmod +x $out/bin/answer
'';
}

50
pkgs/answer/src/answer.js Executable file
View File

@@ -0,0 +1,50 @@
#!/usr/bin/env node
async function promptGpt(message) {
let body = JSON.stringify({
model: "openai",
stream: false,
temperature: 1,
top_p: 1,
messages: [
{ role: "system", content: "Your are a helpful assistant that provides brief responses unless asked for more details." },
{ role: "user", content: message }
]
})
let response = await fetch('https://text.pollinations.ai/openai', {
method: 'POST',
headers: {
'Accept': 'application/json',
'Content-Type': 'application/json'
},
body
});
if (!response.ok) {
throw new Error(`HTTP error! status: ${response.status}`);
}
let data = await response.json();
return data.choices[0].message.content;
}
async function trick17(args) {
const getStdin = async () => {
const chunks = [];
for await (const chunk of process.stdin) chunks.push(chunk);
return Buffer.concat(chunks).toString();
};
let stdin = await getStdin();
//console.log("Received stdin:", stdin);
console.log(await promptGpt(`${args.join(' ')}\n${stdin}`));
}
async function main() {
let args = process.argv.slice(2);
if (args.length === 0) {
console.log("No arguments provided. Exiting.");
return;
}
trick17(args);
}
await main();

View File

@@ -18,4 +18,5 @@
hollow-grub = pkgs.callPackage ./hollow-grub/default.nix { };
peframe = pkgs.callPackage ./peframe/default.nix { python3Packages = pkgs.python3Packages; inherit virustotal-api; };
virustotal-api = pkgs.callPackage ./virustotal-api/default.nix { python3Packages = pkgs.python3Packages; };
answer = pkgs.callPackage ./answer/default.nix { };
}