dr-claw 1.1.2 → 1.1.4
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/README.md +286 -177
- package/README.zh-CN.md +286 -174
- package/dist/assets/{_basePickBy-C0n1uo4u.js → _basePickBy-7CEpiVqc.js} +1 -1
- package/dist/assets/{_baseUniq-BRNmhFkc.js → _baseUniq-yh8GoKah.js} +1 -1
- package/dist/assets/{arc-DOMBmC_A.js → arc-xxYot-So.js} +1 -1
- package/dist/assets/{architectureDiagram-VXUJARFQ-CtMWglbD.js → architectureDiagram-VXUJARFQ-Bb1NqOFB.js} +1 -1
- package/dist/assets/{blockDiagram-VD42YOAC-DK_gTkJy.js → blockDiagram-VD42YOAC-D8xMHk8C.js} +1 -1
- package/dist/assets/{c4Diagram-YG6GDRKO-DrDAvsn7.js → c4Diagram-YG6GDRKO-69UiBMVa.js} +1 -1
- package/dist/assets/channel-BJdHHkhR.js +1 -0
- package/dist/assets/{chunk-4BX2VUAB-CGbhdZcN.js → chunk-4BX2VUAB-DXrPhE6K.js} +1 -1
- package/dist/assets/{chunk-55IACEB6-sGeFSxen.js → chunk-55IACEB6-B3sw4AGX.js} +1 -1
- package/dist/assets/{chunk-B4BG7PRW-RxgHAU_P.js → chunk-B4BG7PRW-Dd4n17kR.js} +1 -1
- package/dist/assets/{chunk-DI55MBZ5-CvHUXZrx.js → chunk-DI55MBZ5-DuTb9gb8.js} +1 -1
- package/dist/assets/{chunk-FMBD7UC4-Sn7cXVNU.js → chunk-FMBD7UC4-CGErQ-ud.js} +1 -1
- package/dist/assets/{chunk-QN33PNHL-bDKOHppN.js → chunk-QN33PNHL-Bk5fuYbR.js} +1 -1
- package/dist/assets/{chunk-QZHKN3VN-B9kN5LGm.js → chunk-QZHKN3VN-2UdZTbge.js} +1 -1
- package/dist/assets/{chunk-TZMSLE5B-CCBe6len.js → chunk-TZMSLE5B-Bl-UYKEK.js} +1 -1
- package/dist/assets/{classDiagram-2ON5EDUG-DQoMNYlY.js → classDiagram-2ON5EDUG-EaoBDWqJ.js} +1 -1
- package/dist/assets/{classDiagram-v2-WZHVMYZB-DQoMNYlY.js → classDiagram-v2-WZHVMYZB-EaoBDWqJ.js} +1 -1
- package/dist/assets/clone-CwXTbwxl.js +1 -0
- package/dist/assets/{cose-bilkent-S5V4N54A-r6sLiHBW.js → cose-bilkent-S5V4N54A-qXNKLX2R.js} +1 -1
- package/dist/assets/{dagre-6UL2VRFP-AbsaR1Oa.js → dagre-6UL2VRFP-DmHvDWep.js} +1 -1
- package/dist/assets/{diagram-PSM6KHXK-DjCvdUyy.js → diagram-PSM6KHXK-C_Rj4DX3.js} +1 -1
- package/dist/assets/{diagram-QEK2KX5R-CqiocXkH.js → diagram-QEK2KX5R-BVr3mPXW.js} +1 -1
- package/dist/assets/{diagram-S2PKOQOG-D5ALeoII.js → diagram-S2PKOQOG-DVx6i0Qe.js} +1 -1
- package/dist/assets/{erDiagram-Q2GNP2WA-C1AeOsiz.js → erDiagram-Q2GNP2WA-BJQyv9_t.js} +1 -1
- package/dist/assets/{flowDiagram-NV44I4VS-C98ve_DO.js → flowDiagram-NV44I4VS-DCR8sPAE.js} +1 -1
- package/dist/assets/{ganttDiagram-JELNMOA3-3zdLvcxD.js → ganttDiagram-JELNMOA3-BcXFAthK.js} +1 -1
- package/dist/assets/{gitGraphDiagram-V2S2FVAM-nDuDMsHh.js → gitGraphDiagram-V2S2FVAM-CnS56w1x.js} +1 -1
- package/dist/assets/{graph-Blm-emkR.js → graph-DGtZXuDY.js} +1 -1
- package/dist/assets/index-C-sL-ag0.css +1 -0
- package/dist/assets/index-VdqxIFPL.js +670 -0
- package/dist/assets/{infoDiagram-HS3SLOUP-CmzE3q0R.js → infoDiagram-HS3SLOUP-DtI272ZD.js} +1 -1
- package/dist/assets/{journeyDiagram-XKPGCS4Q-CYaW7LrP.js → journeyDiagram-XKPGCS4Q-DHp_Kica.js} +1 -1
- package/dist/assets/{kanban-definition-3W4ZIXB7-mkmW7p0j.js → kanban-definition-3W4ZIXB7-CjgHMNku.js} +1 -1
- package/dist/assets/{layout-Ct2kFIId.js → layout-Cnc-DCSb.js} +1 -1
- package/dist/assets/{linear-CKG9EwIJ.js → linear-BtRgmV19.js} +1 -1
- package/dist/assets/{mermaid.core-CaKcUnnd.js → mermaid.core-B20uzv6N.js} +5 -5
- package/dist/assets/{mindmap-definition-VGOIOE7T-Bct-pYin.js → mindmap-definition-VGOIOE7T-bbcLXkWp.js} +1 -1
- package/dist/assets/{pieDiagram-ADFJNKIX-C8wFD4Jr.js → pieDiagram-ADFJNKIX-B4fEzWKO.js} +1 -1
- package/dist/assets/{quadrantDiagram-AYHSOK5B-CuiE_f46.js → quadrantDiagram-AYHSOK5B-B5G0SMbK.js} +1 -1
- package/dist/assets/{requirementDiagram-UZGBJVZJ-C4v1CqU8.js → requirementDiagram-UZGBJVZJ-DsqtOFgj.js} +1 -1
- package/dist/assets/{sankeyDiagram-TZEHDZUN-keAqqs-Y.js → sankeyDiagram-TZEHDZUN-CiGemFRE.js} +1 -1
- package/dist/assets/{sequenceDiagram-WL72ISMW-ClNbvKTB.js → sequenceDiagram-WL72ISMW-hEMvYbe9.js} +1 -1
- package/dist/assets/{stateDiagram-FKZM4ZOC-D8We-2vq.js → stateDiagram-FKZM4ZOC-Cn8VB7b1.js} +1 -1
- package/dist/assets/stateDiagram-v2-4FDKWEC3-DaH0PZOq.js +1 -0
- package/dist/assets/{timeline-definition-IT6M3QCI-DsvEMT5T.js → timeline-definition-IT6M3QCI-DChT1GUr.js} +1 -1
- package/dist/assets/{treemap-GDKQZRPO-TJrzN7Bj.js → treemap-GDKQZRPO-Dflv6a8z.js} +1 -1
- package/dist/assets/{xychartDiagram-PRI3JC2R-BdATmY5F.js → xychartDiagram-PRI3JC2R-Dr4urXR8.js} +1 -1
- package/dist/icons/nanoclaude.png +0 -0
- package/dist/index.html +2 -2
- package/dist/screenshots/screenshot_v1_2.png +0 -0
- package/package.json +61 -4
- package/public/icons/nanoclaude.png +0 -0
- package/public/screenshots/screenshot_v1_2.png +0 -0
- package/scripts/build-electron-icons.mjs +40 -0
- package/scripts/check-deps.js +28 -0
- package/scripts/native-runtime.mjs +128 -0
- package/server/__tests__/gemini-api.test.mjs +699 -0
- package/server/__tests__/gemini-session-index.test.mjs +95 -0
- package/server/__tests__/project-sync-dedup.test.mjs +173 -0
- package/server/__tests__/session-delete.test.mjs +152 -0
- package/server/claude-sdk.js +175 -14
- package/server/cli-chat.js +28 -17
- package/server/cli.js +48 -11
- package/server/data/news-log-arxiv.json +1 -0
- package/server/data/news-log-huggingface.json +1 -0
- package/server/data/news-results-arxiv.json +460 -0
- package/server/data/news-results-huggingface.json +817 -0
- package/server/data/research_interests_arxiv.json +50 -0
- package/server/data/research_interests_huggingface.json +4 -0
- package/server/database/db.js +101 -5
- package/server/database/init.sql +17 -1
- package/server/gemini-api.js +1838 -0
- package/server/gemini-cli.js +13 -2
- package/server/index.js +94 -16
- package/server/load-env.js +13 -1
- package/server/local-gpu.js +166 -24
- package/server/mcp-compute.js +223 -0
- package/server/middleware/auth.js +25 -6
- package/server/nano-claude-code.js +340 -0
- package/server/nanoSessionPaths.js +41 -0
- package/server/openai-codex.js +6 -2
- package/server/openrouter.js +37 -22
- package/server/projects.js +516 -110
- package/server/routes/agent.js +32 -7
- package/server/routes/auto-research.js +1 -1
- package/server/routes/claude-btw.js +55 -0
- package/server/routes/cli-auth.js +422 -58
- package/server/routes/commands.js +25 -1
- package/server/routes/community-tools.js +398 -0
- package/server/routes/compute.js +155 -0
- package/server/routes/git.js +9 -11
- package/server/routes/memory.js +143 -0
- package/server/routes/news.js +3 -0
- package/server/routes/skills.js +35 -0
- package/server/routes/user.js +3 -5
- package/server/utils/__tests__/safePath.test.js +93 -0
- package/server/utils/cliResolution.js +13 -1
- package/server/utils/codexSessionMessages.js +285 -0
- package/server/utils/geminiOAuth.js +333 -0
- package/server/utils/memoryPrompt.js +78 -0
- package/server/utils/safePath.js +51 -0
- package/server/utils/sessionIndex.js +2 -0
- package/server/utils/skillExpander.js +142 -0
- package/server/utils/spawnAsync.js +78 -0
- package/shared/modelConstants.js +19 -1
- package/dist/assets/channel-BFOE7OyC.js +0 -1
- package/dist/assets/clone-BulQSblH.js +0 -1
- package/dist/assets/index-B8Yutsnm.css +0 -1
- package/dist/assets/index-Cf6gyhc3.js +0 -654
- package/dist/assets/stateDiagram-v2-4FDKWEC3-BUURfjrE.js +0 -1
- package/scripts/install-python-tools.js +0 -64
package/server/cli-chat.js
CHANGED
|
@@ -14,6 +14,8 @@ import path from 'path';
|
|
|
14
14
|
import os from 'os';
|
|
15
15
|
import { exec } from 'child_process';
|
|
16
16
|
import { promisify } from 'util';
|
|
17
|
+
import spawnAsync from './utils/spawnAsync.js';
|
|
18
|
+
import { safePath } from './utils/safePath.js';
|
|
17
19
|
|
|
18
20
|
const execAsync = promisify(exec);
|
|
19
21
|
|
|
@@ -164,10 +166,9 @@ const TOOL_SCHEMAS = [
|
|
|
164
166
|
// ── Tool execution ────────────────────────────────────────────────────────────
|
|
165
167
|
|
|
166
168
|
async function executeTool(name, args, workingDir) {
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
};
|
|
169
|
+
// Constrain all paths to the project root to prevent LLM-driven
|
|
170
|
+
// prompt-injection attacks from reading/writing outside the workspace.
|
|
171
|
+
const resolve = (p) => safePath(p, workingDir);
|
|
171
172
|
const trunc = (s) =>
|
|
172
173
|
s.length <= MAX_OUTPUT_CHARS ? s : s.slice(0, MAX_OUTPUT_CHARS) + `\n…(truncated)`;
|
|
173
174
|
|
|
@@ -210,23 +211,33 @@ async function executeTool(name, args, workingDir) {
|
|
|
210
211
|
}
|
|
211
212
|
case 'Glob': {
|
|
212
213
|
const dir = resolve(args.path);
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
214
|
+
try {
|
|
215
|
+
const { stdout } = await spawnAsync('rg', ['--files', '--glob', args.pattern], {
|
|
216
|
+
cwd: dir, timeout: 30_000,
|
|
217
|
+
});
|
|
218
|
+
const lines = stdout.split('\n').filter(Boolean).slice(0, 300);
|
|
219
|
+
return trunc(lines.join('\n') || '(no matches)');
|
|
220
|
+
} catch {
|
|
221
|
+
try {
|
|
222
|
+
const { stdout } = await spawnAsync('find', ['.', '-name', args.pattern, '-type', 'f'], {
|
|
223
|
+
cwd: dir, timeout: 30_000,
|
|
224
|
+
});
|
|
225
|
+
const lines = stdout.split('\n').filter(Boolean).slice(0, 300);
|
|
226
|
+
return trunc(lines.join('\n') || '(no matches)');
|
|
227
|
+
} catch {
|
|
228
|
+
return '(no matches)';
|
|
229
|
+
}
|
|
230
|
+
}
|
|
222
231
|
}
|
|
223
232
|
case 'Grep': {
|
|
224
233
|
const target = resolve(args.path);
|
|
225
|
-
|
|
226
|
-
if (args.include)
|
|
227
|
-
|
|
234
|
+
const rgArgs = ['--line-number', '--max-count', '100', '--max-columns', '200'];
|
|
235
|
+
if (args.include) rgArgs.push('--glob', args.include);
|
|
236
|
+
rgArgs.push('-e', args.pattern, '--', target);
|
|
228
237
|
try {
|
|
229
|
-
const { stdout } = await
|
|
238
|
+
const { stdout } = await spawnAsync('rg', rgArgs, {
|
|
239
|
+
cwd: workingDir, timeout: 30_000,
|
|
240
|
+
});
|
|
230
241
|
return trunc(stdout || '(no matches)');
|
|
231
242
|
} catch (err) {
|
|
232
243
|
if (err.code === 1) return '(no matches)';
|
package/server/cli.js
CHANGED
|
@@ -37,6 +37,7 @@ const colors = {
|
|
|
37
37
|
yellow: '\x1b[33m',
|
|
38
38
|
blue: '\x1b[34m',
|
|
39
39
|
magenta: '\x1b[35m',
|
|
40
|
+
red: '\x1b[31m',
|
|
40
41
|
white: '\x1b[37m',
|
|
41
42
|
gray: '\x1b[90m',
|
|
42
43
|
};
|
|
@@ -46,7 +47,7 @@ const c = {
|
|
|
46
47
|
info: (text) => `${colors.cyan}${text}${colors.reset}`,
|
|
47
48
|
ok: (text) => `${colors.green}${text}${colors.reset}`,
|
|
48
49
|
warn: (text) => `${colors.yellow}${text}${colors.reset}`,
|
|
49
|
-
error: (text) => `${colors.
|
|
50
|
+
error: (text) => `${colors.red}${text}${colors.reset}`,
|
|
50
51
|
tip: (text) => `${colors.blue}${text}${colors.reset}`,
|
|
51
52
|
bright: (text) => `${colors.bright}${text}${colors.reset}`,
|
|
52
53
|
dim: (text) => `${colors.dim}${text}${colors.reset}`,
|
|
@@ -56,6 +57,18 @@ const c = {
|
|
|
56
57
|
const packageJsonPath = path.join(__dirname, '../package.json');
|
|
57
58
|
const packageJson = JSON.parse(fs.readFileSync(packageJsonPath, 'utf8'));
|
|
58
59
|
|
|
60
|
+
function stripOptionalEnvQuotes(raw) {
|
|
61
|
+
const v = String(raw).trim();
|
|
62
|
+
if (v.length >= 2) {
|
|
63
|
+
const open = v[0];
|
|
64
|
+
const close = v[v.length - 1];
|
|
65
|
+
if ((open === '"' && close === '"') || (open === "'" && close === "'")) {
|
|
66
|
+
return v.slice(1, -1);
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
return v;
|
|
70
|
+
}
|
|
71
|
+
|
|
59
72
|
// Load environment variables from .env file if it exists
|
|
60
73
|
function loadEnvFile() {
|
|
61
74
|
try {
|
|
@@ -66,7 +79,7 @@ function loadEnvFile() {
|
|
|
66
79
|
if (trimmedLine && !trimmedLine.startsWith('#')) {
|
|
67
80
|
const [key, ...valueParts] = trimmedLine.split('=');
|
|
68
81
|
if (key && valueParts.length > 0 && !process.env[key]) {
|
|
69
|
-
process.env[key] = valueParts.join('=')
|
|
82
|
+
process.env[key] = stripOptionalEnvQuotes(valueParts.join('='));
|
|
70
83
|
}
|
|
71
84
|
}
|
|
72
85
|
});
|
|
@@ -202,8 +215,8 @@ function showVersion() {
|
|
|
202
215
|
|
|
203
216
|
// Compare semver versions, returns true if v1 > v2
|
|
204
217
|
function isNewerVersion(v1, v2) {
|
|
205
|
-
const parts1 = v1.split('.').map(
|
|
206
|
-
const parts2 = v2.split('.').map(
|
|
218
|
+
const parts1 = v1.split('.').map(p => parseInt(p, 10));
|
|
219
|
+
const parts2 = v2.split('.').map(p => parseInt(p, 10));
|
|
207
220
|
for (let i = 0; i < 3; i++) {
|
|
208
221
|
if (parts1[i] > parts2[i]) return true;
|
|
209
222
|
if (parts1[i] < parts2[i]) return false;
|
|
@@ -211,16 +224,32 @@ function isNewerVersion(v1, v2) {
|
|
|
211
224
|
return false;
|
|
212
225
|
}
|
|
213
226
|
|
|
227
|
+
// Detect install mode: 'git' (cloned repo), 'npx', or 'npm' (global install)
|
|
228
|
+
function getInstallMode() {
|
|
229
|
+
if (fs.existsSync(path.join(__dirname, '..', '.git'))) return 'git';
|
|
230
|
+
const npmExecpath = process.env.npm_execpath || '';
|
|
231
|
+
if (npmExecpath.includes('npx') || process.env.npm_command === 'exec') return 'npx';
|
|
232
|
+
return 'npm';
|
|
233
|
+
}
|
|
234
|
+
|
|
214
235
|
// Check for updates
|
|
215
236
|
async function checkForUpdates(silent = false) {
|
|
216
237
|
try {
|
|
217
|
-
const {
|
|
218
|
-
const
|
|
238
|
+
const { exec } = await import('child_process');
|
|
239
|
+
const { promisify } = await import('util');
|
|
240
|
+
const execAsync = promisify(exec);
|
|
241
|
+
const { stdout } = await execAsync('npm show dr-claw version', { timeout: 10000 });
|
|
242
|
+
const latestVersion = stdout.trim();
|
|
219
243
|
const currentVersion = packageJson.version;
|
|
244
|
+
const mode = getInstallMode();
|
|
220
245
|
|
|
221
246
|
if (isNewerVersion(latestVersion, currentVersion)) {
|
|
222
247
|
console.log(`\n${c.warn('[UPDATE]')} New version available: ${c.bright(latestVersion)} (current: ${currentVersion})`);
|
|
223
|
-
|
|
248
|
+
if (mode === 'npx') {
|
|
249
|
+
console.log(` Run ${c.bright('npx dr-claw@latest')} to use the new version\n`);
|
|
250
|
+
} else {
|
|
251
|
+
console.log(` Run ${c.bright('dr-claw update')} to update\n`);
|
|
252
|
+
}
|
|
224
253
|
return { hasUpdate: true, latestVersion, currentVersion };
|
|
225
254
|
} else if (!silent) {
|
|
226
255
|
console.log(`${c.ok('[OK]')} You are on the latest version (${currentVersion})`);
|
|
@@ -237,9 +266,14 @@ async function checkForUpdates(silent = false) {
|
|
|
237
266
|
// Update the package
|
|
238
267
|
async function updatePackage() {
|
|
239
268
|
try {
|
|
240
|
-
const
|
|
241
|
-
|
|
269
|
+
const mode = getInstallMode();
|
|
270
|
+
|
|
271
|
+
if (mode === 'npx') {
|
|
272
|
+
console.log(`${c.info('[INFO]')} You're running via npx. Run ${c.bright('npx dr-claw@latest')} to get the latest version.`);
|
|
273
|
+
return;
|
|
274
|
+
}
|
|
242
275
|
|
|
276
|
+
console.log(`${c.info('[INFO]')} Checking for updates...`);
|
|
243
277
|
const { hasUpdate, latestVersion, currentVersion } = await checkForUpdates(true);
|
|
244
278
|
|
|
245
279
|
if (!hasUpdate) {
|
|
@@ -248,11 +282,14 @@ async function updatePackage() {
|
|
|
248
282
|
}
|
|
249
283
|
|
|
250
284
|
console.log(`${c.info('[INFO]')} Updating from ${currentVersion} to ${latestVersion}...`);
|
|
251
|
-
|
|
285
|
+
const { exec } = await import('child_process');
|
|
286
|
+
const { promisify } = await import('util');
|
|
287
|
+
const execAsync = promisify(exec);
|
|
288
|
+
await execAsync('npm update -g dr-claw', { timeout: 120000 });
|
|
252
289
|
console.log(`${c.ok('[OK]')} Update complete! Restart dr-claw to use the new version.`);
|
|
253
290
|
} catch (e) {
|
|
254
291
|
console.error(`${c.error('[ERROR]')} Update failed: ${e.message}`);
|
|
255
|
-
console.log(`${c.tip('[TIP]')} Try running manually: npm
|
|
292
|
+
console.log(`${c.tip('[TIP]')} Try running manually: npm install -g dr-claw@latest`);
|
|
256
293
|
}
|
|
257
294
|
}
|
|
258
295
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
["[runtime] Using python3 | Python 3.9.6 | /Library/Developer/CommandLineTools/usr/bin/python3","/Users/dingjiesong/Library/Python/3.9/lib/python/site-packages/urllib3/__init__.py:35: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020","warnings.warn(","11:54:21 [INFO] Loading config from: /Users/dingjiesong/Documents/workspace/ai-scientist/dr-claw/server/data/research_interests_arxiv.json","11:54:21 [INFO] Using current date: 2026-04-09","11:54:21 [INFO] Date windows:","11:54:21 [INFO] Recent 30 days: 2026-03-10 to 2026-04-09","11:54:21 [INFO] Past year (31-365 days): 2025-04-09 to 2026-03-09","11:54:21 [INFO] ======================================================================","11:54:21 [INFO] Step 1: Searching recent papers (last 30 days) from arXiv","11:54:21 [INFO] ======================================================================","11:54:21 [INFO] [arXiv] Searching papers from 2026-03-10 to 2026-04-09","11:54:22 [INFO] [arXiv] Found 200 papers","11:54:22 [INFO] Scored 200 recent papers","11:54:22 [INFO] Skipping Semantic Scholar hot paper search (disabled)","11:54:22 [INFO] ======================================================================","11:54:22 [INFO] Step 3: Merging and ranking results","11:54:22 [INFO] ======================================================================","11:54:22 [INFO] Total unique papers after deduplication: 200","11:54:22 [INFO] Results saved to: /Users/dingjiesong/Documents/workspace/ai-scientist/dr-claw/server/data/news-results-arxiv.json","11:54:22 [INFO] Top 10 papers:","11:54:22 [INFO] 1. TraceSafe: A Systematic Assessment of LLM Guardrails on Mult... (Score: 10.13)","11:54:22 [INFO] 2. Appear2Meaning: A Cross-Cultural Benchmark for Structured Cu... (Score: 8.93)","11:54:22 [INFO] 3. A Systematic Study of Retrieval Pipeline Design for Retrieva... (Score: 8.53)","11:54:22 [INFO] 4. Dynamic Context Evolution for Scalable Synthetic Data Genera... (Score: 8.53)","11:54:22 [INFO] 5. Strategic Persuasion with Trait-Conditioned Multi-Agent Syst... (Score: 8.4)","11:54:22 [INFO] 6. Personalized RewardBench: Evaluating Reward Models with Huma... (Score: 8.13)","11:54:22 [INFO] 7. AgentCity: Constitutional Governance for Autonomous Agent Ec... (Score: 8.0)","11:54:22 [INFO] 8. On the Step Length Confounding in LLM Reasoning Data Selecti... (Score: 7.87)","11:54:22 [INFO] 9. STRIDE-ED: A Strategy-Grounded Stepwise Reasoning Framework ... (Score: 7.73)","11:54:22 [INFO] 10. Differentiable Environment-Trajectory Co-Optimization for Sa... (Score: 7.6)"]
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
["[runtime] Using python3 | Python 3.9.6 | /Library/Developer/CommandLineTools/usr/bin/python3","/Users/dingjiesong/Library/Python/3.9/lib/python/site-packages/urllib3/__init__.py:35: NotOpenSSLWarning: urllib3 v2 only supports OpenSSL 1.1.1+, currently the 'ssl' module is compiled with 'LibreSSL 2.8.3'. See: https://github.com/urllib3/urllib3/issues/3020","warnings.warn(","11:54:28 [INFO] No config provided — showing all HuggingFace Daily Papers","11:54:28 [INFO] Fetching HuggingFace Daily Papers...","11:54:28 [INFO] [HF] Fetched 50 daily paper entries","11:54:28 [INFO] Normalized 50 papers from 50 raw entries","11:54:28 [INFO] Scored 50 papers (0 filtered out by relevance/exclusion)","11:54:28 [INFO] Results saved to: /Users/dingjiesong/Documents/workspace/ai-scientist/dr-claw/server/data/news-results-huggingface.json","11:54:28 [INFO] Top 30 papers:","11:54:28 [INFO] 1. MegaTrain: Full Precision Training of 100B+ Parameter Large ... (Score: 6.09, Upvotes-based popularity: 2.22)","11:54:28 [INFO] 2. ThinkTwice: Jointly Optimizing Large Language Models for Rea... (Score: 6.08, Upvotes-based popularity: 1.98)","11:54:28 [INFO] 3. GBQA: A Game Benchmark for Evaluating LLMs as Quality Assura... (Score: 6.07, Upvotes-based popularity: 2.34)","11:54:28 [INFO] 4. RAGEN-2: Reasoning Collapse in Agentic RL... (Score: 6.0, Upvotes-based popularity: 2.4)","11:54:28 [INFO] 5. Vanast: Virtual Try-On with Human Image Animation via Synthe... (Score: 5.97, Upvotes-based popularity: 2.1)","11:54:28 [INFO] 6. Think in Strokes, Not Pixels: Process-Driven Image Generatio... (Score: 5.85, Upvotes-based popularity: 2.28)","11:54:28 [INFO] 7. Watch Before You Answer: Learning from Visually Grounded Pos... (Score: 5.62, Upvotes-based popularity: 1.62)","11:54:28 [INFO] 8. How Well Do Agentic Skills Work in the Wild: Benchmarking LL... (Score: 5.61, Upvotes-based popularity: 1.74)","11:54:28 [INFO] 9. In-Place Test-Time Training... (Score: 5.08, Upvotes-based popularity: 1.08)","11:54:28 [INFO] 10. SEVerA: Verified Synthesis of Self-Evolving Agents... (Score: 5.0, Upvotes-based popularity: 0.9)","11:54:28 [INFO] 11. MARS: Enabling Autoregressive Models Multi-Token Generation... (Score: 4.96, Upvotes-based popularity: 1.26)","11:54:28 [INFO] 12. INSPATIO-WORLD: A Real-Time 4D World Simulator via Spatiotem... (Score: 4.94, Upvotes-based popularity: 0.84)","11:54:28 [INFO] 13. Paper Circle: An Open-source Multi-agent Research Discovery ... (Score: 4.93, Upvotes-based popularity: 1.2)","11:54:28 [INFO] 14. General Multimodal Protein Design Enables DNA-Encoding of Ch... (Score: 4.81, Upvotes-based popularity: 1.38)","11:54:28 [INFO] 15. DARE: Diffusion Large Language Models Alignment and Reinforc... (Score: 4.71, Upvotes-based popularity: 1.08)","11:54:28 [INFO] 16. ClawsBench: Evaluating Capability and Safety of LLM Producti... (Score: 4.59, Upvotes-based popularity: 1.02)","11:54:28 [INFO] 17. TC-AE: Unlocking Token Capacity for Deep Compression Autoenc... (Score: 4.54, Upvotes-based popularity: 0.54)","11:54:28 [INFO] 18. MMEmb-R1: Reasoning-Enhanced Multimodal Embedding with Pair-... (Score: 4.52, Upvotes-based popularity: 0.42)","11:54:28 [INFO] 19. FP4 Explore, BF16 Train: Diffusion Reinforcement Learning vi... (Score: 4.42, Upvotes-based popularity: 0.42)","11:54:28 [INFO] 20. MedGemma 1.5 Technical Report... (Score: 4.41, Upvotes-based popularity: 0.54)","11:54:28 [INFO] 21. FlowInOne:Unifying Multimodal Generation as Image-in, Image-... (Score: 4.4, Upvotes-based popularity: 0.3)","11:54:28 [INFO] 22. Scientific Graphics Program Synthesis via Dual Self-Consiste... (Score: 4.28, Upvotes-based popularity: 0.18)","11:54:28 [INFO] 23. Graph-Based Chain-of-Thought Pruning for Reducing Redundant ... (Score: 4.23, Upvotes-based popularity: 0.36)","11:54:28 [INFO] 24. Experience Transfer for Multimodal LLM Agents in Minecraft G... (Score: 4.23, Upvotes-based popularity: 0.36)","11:54:28 [INFO] 25. AgentGL: Towards Agentic Graph Learning with LLMs via Reinfo... (Score: 4.22, Upvotes-based popularity: 0.12)","11:54:28 [INFO] 26. Learning to Hint for Reinforcement Learning... (Score: 4.18, Upvotes-based popularity: 0.18)","11:54:28 [INFO] 27. Personalized RewardBench: Evaluating Reward Models with Huma... (Score: 4.18, Upvotes-based popularity: 0.18)","11:54:28 [INFO] 28. REAM: Merging Improves Pruning of Experts in LLMs... (Score: 4.18, Upvotes-based popularity: 0.18)","11:54:28 [INFO] 29. Context-Value-Action Architecture for Value-Driven Large Lan... (Score: 4.18, Upvotes-based popularity: 0.18)","11:54:28 [INFO] 30. Action Images: End-to-End Policy Learning via Multiview Vide... (Score: 4.14, Upvotes-based popularity: 0.54)"]
|