scientify 2.1.0 → 3.0.0
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.d.ts.map +1 -1
- package/dist/index.js +1 -76
- package/dist/index.js.map +1 -1
- package/dist/src/cli/research.d.ts.map +1 -1
- package/dist/src/cli/research.js +6 -23
- package/dist/src/cli/research.js.map +1 -1
- package/dist/src/commands/metabolism-status.d.ts.map +1 -1
- package/dist/src/commands/metabolism-status.js +5 -25
- package/dist/src/commands/metabolism-status.js.map +1 -1
- package/dist/src/commands.d.ts +8 -8
- package/dist/src/commands.d.ts.map +1 -1
- package/dist/src/commands.js +91 -262
- package/dist/src/commands.js.map +1 -1
- package/dist/src/templates/bootstrap.d.ts.map +1 -1
- package/dist/src/templates/bootstrap.js +45 -59
- package/dist/src/templates/bootstrap.js.map +1 -1
- package/dist/src/types.d.ts +2 -10
- package/dist/src/types.d.ts.map +1 -1
- package/openclaw.plugin.json +3 -16
- package/package.json +2 -3
- package/skills/idea-generation/SKILL.md +20 -44
- package/skills/idea-generation/references/code-mapping.md +3 -3
- package/skills/idea-generation/references/idea-template.md +1 -1
- package/skills/idea-generation/references/reading-long-papers.md +3 -3
- package/skills/metabolism/SKILL.md +80 -36
- package/skills/paper-download/SKILL.md +61 -0
- package/skills/research-collect/SKILL.md +41 -111
- package/skills/research-experiment/SKILL.md +11 -12
- package/skills/research-implement/SKILL.md +10 -11
- package/skills/research-pipeline/SKILL.md +23 -31
- package/skills/research-plan/SKILL.md +7 -11
- package/skills/research-review/SKILL.md +21 -22
- package/skills/research-survey/SKILL.md +11 -25
- package/skills/write-review-paper/SKILL.md +12 -12
- package/skills/write-review-paper/references/note-template.md +1 -1
- package/skills/write-review-paper/references/survey-template.md +1 -1
- package/dist/src/hooks/research-mode.d.ts +0 -22
- package/dist/src/hooks/research-mode.d.ts.map +0 -1
- package/dist/src/hooks/research-mode.js +0 -35
- package/dist/src/hooks/research-mode.js.map +0 -1
- package/dist/src/hooks/scientify-cron-autofill.d.ts +0 -15
- package/dist/src/hooks/scientify-cron-autofill.d.ts.map +0 -1
- package/dist/src/hooks/scientify-cron-autofill.js +0 -156
- package/dist/src/hooks/scientify-cron-autofill.js.map +0 -1
- package/dist/src/hooks/scientify-signature.d.ts +0 -21
- package/dist/src/hooks/scientify-signature.d.ts.map +0 -1
- package/dist/src/hooks/scientify-signature.js +0 -150
- package/dist/src/hooks/scientify-signature.js.map +0 -1
- package/dist/src/knowledge-state/project.d.ts +0 -13
- package/dist/src/knowledge-state/project.d.ts.map +0 -1
- package/dist/src/knowledge-state/project.js +0 -88
- package/dist/src/knowledge-state/project.js.map +0 -1
- package/dist/src/knowledge-state/render.d.ts +0 -63
- package/dist/src/knowledge-state/render.d.ts.map +0 -1
- package/dist/src/knowledge-state/render.js +0 -368
- package/dist/src/knowledge-state/render.js.map +0 -1
- package/dist/src/knowledge-state/store.d.ts +0 -19
- package/dist/src/knowledge-state/store.d.ts.map +0 -1
- package/dist/src/knowledge-state/store.js +0 -978
- package/dist/src/knowledge-state/store.js.map +0 -1
- package/dist/src/knowledge-state/types.d.ts +0 -182
- package/dist/src/knowledge-state/types.d.ts.map +0 -1
- package/dist/src/knowledge-state/types.js +0 -2
- package/dist/src/knowledge-state/types.js.map +0 -1
- package/dist/src/literature/subscription-state.d.ts +0 -112
- package/dist/src/literature/subscription-state.d.ts.map +0 -1
- package/dist/src/literature/subscription-state.js +0 -696
- package/dist/src/literature/subscription-state.js.map +0 -1
- package/dist/src/research-subscriptions/constants.d.ts +0 -16
- package/dist/src/research-subscriptions/constants.d.ts.map +0 -1
- package/dist/src/research-subscriptions/constants.js +0 -59
- package/dist/src/research-subscriptions/constants.js.map +0 -1
- package/dist/src/research-subscriptions/cron-client.d.ts +0 -8
- package/dist/src/research-subscriptions/cron-client.d.ts.map +0 -1
- package/dist/src/research-subscriptions/cron-client.js +0 -81
- package/dist/src/research-subscriptions/cron-client.js.map +0 -1
- package/dist/src/research-subscriptions/delivery.d.ts +0 -10
- package/dist/src/research-subscriptions/delivery.d.ts.map +0 -1
- package/dist/src/research-subscriptions/delivery.js +0 -82
- package/dist/src/research-subscriptions/delivery.js.map +0 -1
- package/dist/src/research-subscriptions/handlers.d.ts +0 -6
- package/dist/src/research-subscriptions/handlers.d.ts.map +0 -1
- package/dist/src/research-subscriptions/handlers.js +0 -204
- package/dist/src/research-subscriptions/handlers.js.map +0 -1
- package/dist/src/research-subscriptions/parse.d.ts +0 -11
- package/dist/src/research-subscriptions/parse.d.ts.map +0 -1
- package/dist/src/research-subscriptions/parse.js +0 -492
- package/dist/src/research-subscriptions/parse.js.map +0 -1
- package/dist/src/research-subscriptions/prompt.d.ts +0 -5
- package/dist/src/research-subscriptions/prompt.d.ts.map +0 -1
- package/dist/src/research-subscriptions/prompt.js +0 -347
- package/dist/src/research-subscriptions/prompt.js.map +0 -1
- package/dist/src/research-subscriptions/types.d.ts +0 -66
- package/dist/src/research-subscriptions/types.d.ts.map +0 -1
- package/dist/src/research-subscriptions/types.js +0 -2
- package/dist/src/research-subscriptions/types.js.map +0 -1
- package/dist/src/research-subscriptions.d.ts +0 -2
- package/dist/src/research-subscriptions.d.ts.map +0 -1
- package/dist/src/research-subscriptions.js +0 -2
- package/dist/src/research-subscriptions.js.map +0 -1
- package/dist/src/services/auto-updater.d.ts +0 -15
- package/dist/src/services/auto-updater.d.ts.map +0 -1
- package/dist/src/services/auto-updater.js +0 -188
- package/dist/src/services/auto-updater.js.map +0 -1
- package/dist/src/tools/arxiv-download.d.ts +0 -24
- package/dist/src/tools/arxiv-download.d.ts.map +0 -1
- package/dist/src/tools/arxiv-download.js +0 -177
- package/dist/src/tools/arxiv-download.js.map +0 -1
- package/dist/src/tools/github-search-tool.d.ts +0 -25
- package/dist/src/tools/github-search-tool.d.ts.map +0 -1
- package/dist/src/tools/github-search-tool.js +0 -114
- package/dist/src/tools/github-search-tool.js.map +0 -1
- package/dist/src/tools/openreview-lookup.d.ts +0 -31
- package/dist/src/tools/openreview-lookup.d.ts.map +0 -1
- package/dist/src/tools/openreview-lookup.js +0 -414
- package/dist/src/tools/openreview-lookup.js.map +0 -1
- package/dist/src/tools/paper-browser.d.ts +0 -23
- package/dist/src/tools/paper-browser.d.ts.map +0 -1
- package/dist/src/tools/paper-browser.js +0 -121
- package/dist/src/tools/paper-browser.js.map +0 -1
- package/dist/src/tools/scientify-cron.d.ts +0 -63
- package/dist/src/tools/scientify-cron.d.ts.map +0 -1
- package/dist/src/tools/scientify-cron.js +0 -265
- package/dist/src/tools/scientify-cron.js.map +0 -1
- package/dist/src/tools/scientify-literature-state.d.ts +0 -303
- package/dist/src/tools/scientify-literature-state.d.ts.map +0 -1
- package/dist/src/tools/scientify-literature-state.js +0 -957
- package/dist/src/tools/scientify-literature-state.js.map +0 -1
- package/dist/src/tools/unpaywall-download.d.ts +0 -21
- package/dist/src/tools/unpaywall-download.d.ts.map +0 -1
- package/dist/src/tools/unpaywall-download.js +0 -169
- package/dist/src/tools/unpaywall-download.js.map +0 -1
- package/dist/src/tools/workspace.d.ts +0 -32
- package/dist/src/tools/workspace.d.ts.map +0 -1
- package/dist/src/tools/workspace.js +0 -69
- package/dist/src/tools/workspace.js.map +0 -1
- package/skills/metabolism-init/SKILL.md +0 -80
- package/skills/research-subscription/SKILL.md +0 -119
package/dist/src/commands.js
CHANGED
|
@@ -1,227 +1,111 @@
|
|
|
1
1
|
import * as fs from "node:fs";
|
|
2
2
|
import * as path from "node:path";
|
|
3
3
|
import * as os from "node:os";
|
|
4
|
-
const
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
catch {
|
|
11
|
-
return null;
|
|
12
|
-
}
|
|
13
|
-
}
|
|
14
|
-
function getProjectMeta(projectId) {
|
|
15
|
-
const metaPath = path.join(WORKSPACE_ROOT, projectId, "project.json");
|
|
16
|
-
try {
|
|
17
|
-
return JSON.parse(fs.readFileSync(metaPath, "utf-8"));
|
|
18
|
-
}
|
|
19
|
-
catch {
|
|
20
|
-
return null;
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
function listProjects() {
|
|
4
|
+
const OPENCLAW_HOME = path.join(os.homedir(), ".openclaw");
|
|
5
|
+
/**
|
|
6
|
+
* List all research agents from openclaw.json.
|
|
7
|
+
*/
|
|
8
|
+
function listResearchAgents() {
|
|
9
|
+
const configPath = path.join(OPENCLAW_HOME, "openclaw.json");
|
|
24
10
|
try {
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
.
|
|
11
|
+
const config = JSON.parse(fs.readFileSync(configPath, "utf-8"));
|
|
12
|
+
const agents = config.agents?.list ?? [];
|
|
13
|
+
return agents
|
|
14
|
+
.filter((a) => a.id.startsWith("research-"))
|
|
15
|
+
.map((a) => ({
|
|
16
|
+
id: a.id,
|
|
17
|
+
workspace: (a.workspace ?? `~/.openclaw/workspace-${a.id}`).replace("~", os.homedir()),
|
|
18
|
+
}));
|
|
29
19
|
}
|
|
30
20
|
catch {
|
|
31
21
|
return [];
|
|
32
22
|
}
|
|
33
23
|
}
|
|
34
|
-
function
|
|
35
|
-
if (bytes < 1024)
|
|
36
|
-
return `${bytes}B`;
|
|
37
|
-
if (bytes < 1024 * 1024)
|
|
38
|
-
return `${(bytes / 1024).toFixed(1)}KB`;
|
|
39
|
-
return `${(bytes / (1024 * 1024)).toFixed(1)}MB`;
|
|
40
|
-
}
|
|
41
|
-
function getDirSize(dirPath) {
|
|
42
|
-
let size = 0;
|
|
43
|
-
try {
|
|
44
|
-
const entries = fs.readdirSync(dirPath, { withFileTypes: true });
|
|
45
|
-
for (const entry of entries) {
|
|
46
|
-
const fullPath = path.join(dirPath, entry.name);
|
|
47
|
-
if (entry.isDirectory()) {
|
|
48
|
-
size += getDirSize(fullPath);
|
|
49
|
-
}
|
|
50
|
-
else {
|
|
51
|
-
size += fs.statSync(fullPath).size;
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
catch {
|
|
56
|
-
// ignore
|
|
57
|
-
}
|
|
58
|
-
return size;
|
|
59
|
-
}
|
|
60
|
-
function countFiles(dirPath, pattern) {
|
|
61
|
-
let count = 0;
|
|
62
|
-
try {
|
|
63
|
-
const entries = fs.readdirSync(dirPath, { withFileTypes: true });
|
|
64
|
-
for (const entry of entries) {
|
|
65
|
-
const fullPath = path.join(dirPath, entry.name);
|
|
66
|
-
if (entry.isDirectory()) {
|
|
67
|
-
count += countFiles(fullPath, pattern);
|
|
68
|
-
}
|
|
69
|
-
else if (!pattern || pattern.test(entry.name)) {
|
|
70
|
-
count++;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
}
|
|
74
|
-
catch {
|
|
75
|
-
// ignore
|
|
76
|
-
}
|
|
77
|
-
return count;
|
|
78
|
-
}
|
|
79
|
-
function getKnowledgeStateSummary(projectId) {
|
|
80
|
-
const file = path.join(WORKSPACE_ROOT, projectId, "knowledge_state", "state.json");
|
|
81
|
-
if (!fs.existsSync(file))
|
|
82
|
-
return null;
|
|
24
|
+
function countFiles(dirPath, filter) {
|
|
83
25
|
try {
|
|
84
|
-
const
|
|
85
|
-
|
|
86
|
-
const streams = parsed.streams ?? {};
|
|
87
|
-
const streamEntries = Object.values(streams);
|
|
88
|
-
let totalRuns = 0;
|
|
89
|
-
let totalHypotheses = 0;
|
|
90
|
-
let totalPaperNotes = 0;
|
|
91
|
-
let recentFullTextReadCount = 0;
|
|
92
|
-
let recentNotFullTextReadCount = 0;
|
|
93
|
-
let lastRunAtMs = 0;
|
|
94
|
-
let lastStatus;
|
|
95
|
-
for (const stream of streamEntries) {
|
|
96
|
-
totalRuns += Number.isFinite(stream.totalRuns) ? Math.max(0, Math.floor(stream.totalRuns)) : 0;
|
|
97
|
-
totalHypotheses += Number.isFinite(stream.totalHypotheses)
|
|
98
|
-
? Math.max(0, Math.floor(stream.totalHypotheses))
|
|
99
|
-
: 0;
|
|
100
|
-
totalPaperNotes += Array.isArray(stream.paperNotes) ? stream.paperNotes.length : 0;
|
|
101
|
-
recentFullTextReadCount += Number.isFinite(stream.recentFullTextReadCount)
|
|
102
|
-
? Math.max(0, Math.floor(stream.recentFullTextReadCount))
|
|
103
|
-
: 0;
|
|
104
|
-
recentNotFullTextReadCount += Number.isFinite(stream.recentNotFullTextReadCount)
|
|
105
|
-
? Math.max(0, Math.floor(stream.recentNotFullTextReadCount))
|
|
106
|
-
: 0;
|
|
107
|
-
const runAt = Number.isFinite(stream.lastRunAtMs) ? Math.floor(stream.lastRunAtMs) : 0;
|
|
108
|
-
if (runAt >= lastRunAtMs) {
|
|
109
|
-
lastRunAtMs = runAt;
|
|
110
|
-
lastStatus = stream.lastStatus;
|
|
111
|
-
}
|
|
112
|
-
}
|
|
113
|
-
return {
|
|
114
|
-
totalRuns,
|
|
115
|
-
totalHypotheses,
|
|
116
|
-
totalPaperNotes,
|
|
117
|
-
recentFullTextReadCount,
|
|
118
|
-
recentNotFullTextReadCount,
|
|
119
|
-
...(lastRunAtMs > 0 ? { lastRunAtMs } : {}),
|
|
120
|
-
...(lastStatus ? { lastStatus } : {}),
|
|
121
|
-
streamCount: streamEntries.length,
|
|
122
|
-
};
|
|
26
|
+
const entries = fs.readdirSync(dirPath);
|
|
27
|
+
return filter ? entries.filter(filter).length : entries.length;
|
|
123
28
|
}
|
|
124
29
|
catch {
|
|
125
|
-
return
|
|
30
|
+
return 0;
|
|
126
31
|
}
|
|
127
32
|
}
|
|
128
33
|
/**
|
|
129
|
-
* /research-status - Show workspace status
|
|
34
|
+
* /research-status - Show workspace status for all research agents
|
|
130
35
|
*/
|
|
131
36
|
export function handleResearchStatus(_ctx) {
|
|
132
|
-
const
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
output
|
|
137
|
-
|
|
138
|
-
const
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
output += `- last run: ${knowledgeSummary.lastRunAtMs ? new Date(knowledgeSummary.lastRunAtMs).toISOString() : "(none)"}\n\n`;
|
|
149
|
-
}
|
|
150
|
-
}
|
|
151
|
-
if (projects.length === 0) {
|
|
152
|
-
output += "_No projects found. Use /idea-generation to create one._";
|
|
153
|
-
}
|
|
154
|
-
else {
|
|
155
|
-
output += "**Projects:**\n";
|
|
156
|
-
for (const proj of projects) {
|
|
157
|
-
const isActive = proj === activeProject;
|
|
158
|
-
const papersCount = countFiles(path.join(WORKSPACE_ROOT, proj, "papers"));
|
|
159
|
-
const ideasCount = countFiles(path.join(WORKSPACE_ROOT, proj, "ideas"), /\.md$/);
|
|
160
|
-
let reposCount = 0;
|
|
161
|
-
try {
|
|
162
|
-
const reposDir = path.join(WORKSPACE_ROOT, proj, "repos");
|
|
163
|
-
if (fs.existsSync(reposDir)) {
|
|
164
|
-
reposCount = fs
|
|
165
|
-
.readdirSync(reposDir, { withFileTypes: true })
|
|
166
|
-
.filter((d) => d.isDirectory()).length;
|
|
167
|
-
}
|
|
168
|
-
}
|
|
169
|
-
catch {
|
|
170
|
-
// ignore
|
|
171
|
-
}
|
|
172
|
-
const marker = isActive ? "● " : " ";
|
|
173
|
-
output += `${marker}\`${proj}\` (papers: ${papersCount}, ideas: ${ideasCount}, repos: ${reposCount})\n`;
|
|
37
|
+
const agents = listResearchAgents();
|
|
38
|
+
if (agents.length === 0) {
|
|
39
|
+
return { text: "No research projects found. Use `openclaw research init <id>` to create one." };
|
|
40
|
+
}
|
|
41
|
+
let output = "**Research Projects**\n\n";
|
|
42
|
+
for (const agent of agents) {
|
|
43
|
+
const projectId = agent.id.replace("research-", "");
|
|
44
|
+
const w = agent.workspace;
|
|
45
|
+
const papersCount = countFiles(path.join(w, "papers"), (f) => f.endsWith(".tex") || f.endsWith(".pdf"));
|
|
46
|
+
const ideasCount = countFiles(path.join(w, "ideas"), (f) => f.endsWith(".md"));
|
|
47
|
+
const topicCount = countFiles(path.join(w, "knowledge"), (f) => f.startsWith("topic-"));
|
|
48
|
+
const hypothesisCount = countFiles(path.join(w, "ideas"), (f) => f.startsWith("hyp-"));
|
|
49
|
+
let currentDay = 0;
|
|
50
|
+
try {
|
|
51
|
+
const config = JSON.parse(fs.readFileSync(path.join(w, "config.json"), "utf-8"));
|
|
52
|
+
currentDay = config.currentDay ?? 0;
|
|
174
53
|
}
|
|
54
|
+
catch { /* not yet bootstrapped */ }
|
|
55
|
+
output += `**${projectId}** (Day ${currentDay})\n`;
|
|
56
|
+
output += ` Workspace: \`${w}\`\n`;
|
|
57
|
+
output += ` Topics: ${topicCount} | Hypotheses: ${hypothesisCount} | Papers: ${papersCount} | Ideas: ${ideasCount}\n\n`;
|
|
175
58
|
}
|
|
176
59
|
return { text: output };
|
|
177
60
|
}
|
|
178
61
|
/**
|
|
179
|
-
* /papers - List downloaded papers
|
|
62
|
+
* /papers - List downloaded papers in a research agent workspace
|
|
180
63
|
*/
|
|
181
64
|
export function handlePapers(ctx) {
|
|
182
|
-
const
|
|
183
|
-
if (!
|
|
184
|
-
return { text: "
|
|
65
|
+
const agent = resolveAgent(ctx.args?.trim());
|
|
66
|
+
if (!agent) {
|
|
67
|
+
return { text: "No research project found. Use `openclaw research init <id>` to create one." };
|
|
185
68
|
}
|
|
186
|
-
const papersDir = path.join(
|
|
69
|
+
const papersDir = path.join(agent.workspace, "papers");
|
|
187
70
|
if (!fs.existsSync(papersDir)) {
|
|
188
|
-
return { text:
|
|
71
|
+
return { text: `No papers directory in project ${agent.id}.` };
|
|
189
72
|
}
|
|
190
|
-
|
|
191
|
-
|
|
73
|
+
const downloadsDir = path.join(papersDir, "_downloads");
|
|
74
|
+
let output = `**Papers — ${agent.id.replace("research-", "")}**\n\n`;
|
|
192
75
|
let hasItems = false;
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
76
|
+
try {
|
|
77
|
+
const entries = fs.readdirSync(downloadsDir, { withFileTypes: true });
|
|
78
|
+
for (const entry of entries) {
|
|
79
|
+
if (entry.isDirectory()) {
|
|
80
|
+
const texCount = fs.readdirSync(path.join(downloadsDir, entry.name)).filter((f) => f.endsWith(".tex")).length;
|
|
81
|
+
output += ` [tex] \`${entry.name}\` (${texCount} files)\n`;
|
|
82
|
+
hasItems = true;
|
|
83
|
+
}
|
|
84
|
+
else if (entry.name.endsWith(".pdf")) {
|
|
85
|
+
output += ` [pdf] \`${entry.name.replace(".pdf", "")}\`\n`;
|
|
86
|
+
hasItems = true;
|
|
87
|
+
}
|
|
204
88
|
}
|
|
205
89
|
}
|
|
206
|
-
|
|
90
|
+
catch { /* empty */ }
|
|
91
|
+
if (!hasItems)
|
|
207
92
|
output += "_No papers downloaded yet._";
|
|
208
|
-
}
|
|
209
93
|
return { text: output };
|
|
210
94
|
}
|
|
211
95
|
/**
|
|
212
|
-
* /ideas - List generated ideas
|
|
96
|
+
* /ideas - List generated ideas in a research agent workspace
|
|
213
97
|
*/
|
|
214
98
|
export function handleIdeas(ctx) {
|
|
215
|
-
const
|
|
216
|
-
if (!
|
|
217
|
-
return { text: "
|
|
99
|
+
const agent = resolveAgent(ctx.args?.trim());
|
|
100
|
+
if (!agent) {
|
|
101
|
+
return { text: "No research project found. Use `openclaw research init <id>` to create one." };
|
|
218
102
|
}
|
|
219
|
-
const ideasDir = path.join(
|
|
103
|
+
const ideasDir = path.join(agent.workspace, "ideas");
|
|
220
104
|
if (!fs.existsSync(ideasDir)) {
|
|
221
|
-
return { text:
|
|
105
|
+
return { text: `No ideas in project ${agent.id.replace("research-", "")}.` };
|
|
222
106
|
}
|
|
223
|
-
let output = `💡 **Ideas in ${projectId}**\n\n`;
|
|
224
107
|
const files = fs.readdirSync(ideasDir).filter((f) => f.endsWith(".md"));
|
|
108
|
+
let output = `**Ideas — ${agent.id.replace("research-", "")}**\n\n`;
|
|
225
109
|
if (files.length === 0) {
|
|
226
110
|
output += "_No ideas generated yet._";
|
|
227
111
|
}
|
|
@@ -231,97 +115,42 @@ export function handleIdeas(ctx) {
|
|
|
231
115
|
const titleMatch = content.match(/^#\s+(.+)$/m);
|
|
232
116
|
const title = titleMatch ? titleMatch[1] : file;
|
|
233
117
|
const isSelected = file === "selected_idea.md";
|
|
234
|
-
const marker = isSelected ? "
|
|
235
|
-
output += `${marker}\`${file
|
|
118
|
+
const marker = isSelected ? "* " : " ";
|
|
119
|
+
output += `${marker}\`${file}\` ${title}\n`;
|
|
236
120
|
}
|
|
237
121
|
}
|
|
238
122
|
return { text: output };
|
|
239
123
|
}
|
|
240
124
|
/**
|
|
241
|
-
* /projects - List all research projects
|
|
125
|
+
* /projects - List all research projects (alias for /research-status)
|
|
242
126
|
*/
|
|
243
127
|
export function handleProjects(_ctx) {
|
|
244
|
-
|
|
245
|
-
const projects = listProjects();
|
|
246
|
-
let output = "📂 **Research Projects**\n\n";
|
|
247
|
-
if (projects.length === 0) {
|
|
248
|
-
output += "_No projects found._";
|
|
249
|
-
}
|
|
250
|
-
else {
|
|
251
|
-
for (const proj of projects) {
|
|
252
|
-
const isActive = proj === activeProject;
|
|
253
|
-
const meta = getProjectMeta(proj);
|
|
254
|
-
const marker = isActive ? "● " : " ";
|
|
255
|
-
output += `${marker}**${proj}**\n`;
|
|
256
|
-
if (meta?.name)
|
|
257
|
-
output += ` name: ${meta.name}\n`;
|
|
258
|
-
if (meta?.created)
|
|
259
|
-
output += ` created: ${meta.created}\n`;
|
|
260
|
-
if (meta?.topics?.length)
|
|
261
|
-
output += ` topics: ${meta.topics.join(", ")}\n`;
|
|
262
|
-
}
|
|
263
|
-
}
|
|
264
|
-
return { text: output };
|
|
128
|
+
return handleResearchStatus(_ctx);
|
|
265
129
|
}
|
|
266
130
|
/**
|
|
267
|
-
* /project-switch
|
|
131
|
+
* /project-switch - No longer needed (each agent has its own workspace)
|
|
268
132
|
*/
|
|
269
|
-
export function handleProjectSwitch(
|
|
270
|
-
|
|
271
|
-
if (!projectId) {
|
|
272
|
-
return { text: "❌ Usage: `/project-switch <project-id>`" };
|
|
273
|
-
}
|
|
274
|
-
const projectPath = path.join(WORKSPACE_ROOT, projectId);
|
|
275
|
-
if (!fs.existsSync(projectPath)) {
|
|
276
|
-
return { text: `❌ Project '${projectId}' not found.` };
|
|
277
|
-
}
|
|
278
|
-
fs.mkdirSync(WORKSPACE_ROOT, { recursive: true });
|
|
279
|
-
fs.writeFileSync(path.join(WORKSPACE_ROOT, ".active"), projectId);
|
|
280
|
-
return { text: `✓ Switched to project '**${projectId}**'` };
|
|
133
|
+
export function handleProjectSwitch(_ctx) {
|
|
134
|
+
return { text: "Project switching is no longer needed. Each research agent has its own workspace. Use `openclaw research list` to see all projects." };
|
|
281
135
|
}
|
|
282
136
|
/**
|
|
283
|
-
* /project-delete
|
|
137
|
+
* /project-delete - Delete via CLI instead
|
|
284
138
|
*/
|
|
285
|
-
export function handleProjectDelete(
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
const
|
|
294
|
-
if (
|
|
295
|
-
return
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
const ideasCount = countFiles(path.join(projectPath, "ideas"), /\.md$/);
|
|
300
|
-
// For safety, we'll return info and ask for confirmation
|
|
301
|
-
// Note: Plugin commands don't support interactive confirmation,
|
|
302
|
-
// so we provide a force flag via the args
|
|
303
|
-
if (!hasForce) {
|
|
304
|
-
return {
|
|
305
|
-
text: `⚠️ **About to delete:**\n\n` +
|
|
306
|
-
`- Project: \`${projectId}\`\n` +
|
|
307
|
-
`- Papers: ${papersCount}\n` +
|
|
308
|
-
`- Ideas: ${ideasCount}\n` +
|
|
309
|
-
`- Size: ${size}\n\n` +
|
|
310
|
-
`To confirm, use: \`/project-delete ${projectId} --force\``,
|
|
311
|
-
};
|
|
312
|
-
}
|
|
313
|
-
// Clear active if this is the active project
|
|
314
|
-
const activeProject = getActiveProject();
|
|
315
|
-
if (activeProject === projectId) {
|
|
316
|
-
try {
|
|
317
|
-
fs.unlinkSync(path.join(WORKSPACE_ROOT, ".active"));
|
|
318
|
-
}
|
|
319
|
-
catch {
|
|
320
|
-
// ignore
|
|
321
|
-
}
|
|
139
|
+
export function handleProjectDelete(_ctx) {
|
|
140
|
+
return { text: "Use `openclaw research delete <id>` to delete a research project." };
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Resolve which research agent to use.
|
|
144
|
+
* If an arg is given, match by project id; otherwise use the first (or only) agent.
|
|
145
|
+
*/
|
|
146
|
+
function resolveAgent(arg) {
|
|
147
|
+
const agents = listResearchAgents();
|
|
148
|
+
if (agents.length === 0)
|
|
149
|
+
return null;
|
|
150
|
+
if (arg) {
|
|
151
|
+
const agentId = arg.startsWith("research-") ? arg : `research-${arg}`;
|
|
152
|
+
return agents.find((a) => a.id === agentId) ?? null;
|
|
322
153
|
}
|
|
323
|
-
|
|
324
|
-
fs.rmSync(projectPath, { recursive: true, force: true });
|
|
325
|
-
return { text: `✓ Deleted project '**${projectId}**'` };
|
|
154
|
+
return agents[0] ?? null;
|
|
326
155
|
}
|
|
327
156
|
//# sourceMappingURL=commands.js.map
|
package/dist/src/commands.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/commands.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/commands.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/templates/bootstrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../../../src/templates/bootstrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAqC7D;AAED,wBAAgB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAaxD;AAED,wBAAgB,cAAc,IAAI,MAAM,CAiFvC"}
|
|
@@ -12,14 +12,14 @@ export function renderBootstrapMd(projectName) {
|
|
|
12
12
|
1. 向用户问好,说明你是课题「${projectName}」的研究 agent,请用户描述研究方向
|
|
13
13
|
2. 根据用户回答,提取:
|
|
14
14
|
- 核心域关键词(3-5 个)
|
|
15
|
-
- 建议的 arXiv 分类(如 cs.LG, cs.AI
|
|
16
|
-
-
|
|
17
|
-
3.
|
|
15
|
+
- 建议的 arXiv 分类(如 cs.LG, cs.AI),如果研究方向不属于 arXiv 覆盖范围则留空
|
|
16
|
+
- 建议的文献来源偏好(arXiv、OpenAlex、或两者兼用)
|
|
17
|
+
3. 与用户讨论研究方向的边界和重点,确认以上配置,接受调整
|
|
18
18
|
4. 确认后执行以下写入操作:
|
|
19
|
-
- 更新 SOUL.md
|
|
20
|
-
- 生成
|
|
21
|
-
5. 询问用户是否立即执行 Day 0
|
|
22
|
-
-
|
|
19
|
+
- 更新 SOUL.md:填写研究方向、核心域各字段
|
|
20
|
+
- 生成 config.json(参考下方模板)
|
|
21
|
+
5. 询问用户是否立即执行 Day 0(构建初始知识状态)
|
|
22
|
+
- 如果是,执行 /metabolism 完成首轮文献检索和知识库构建(Day 0 模式)
|
|
23
23
|
6. 删除本文件(BOOTSTRAP.md)
|
|
24
24
|
|
|
25
25
|
## config.json 模板
|
|
@@ -27,25 +27,17 @@ export function renderBootstrapMd(projectName) {
|
|
|
27
27
|
\`\`\`json
|
|
28
28
|
{
|
|
29
29
|
"projectId": "${projectName}",
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
"dateMode": "daily-new"
|
|
34
|
-
},
|
|
35
|
-
"monitorZone": {
|
|
36
|
-
"categories": ["相邻领域分类"],
|
|
37
|
-
"enabled": true
|
|
38
|
-
},
|
|
39
|
-
"heartbeat": {
|
|
40
|
-
"cronExpression": "0 6 * * *",
|
|
41
|
-
"timezone": "Asia/Shanghai",
|
|
42
|
-
"enabled": true
|
|
43
|
-
},
|
|
44
|
-
"agentId": "research-${projectName}",
|
|
30
|
+
"keywords": ["关键词1", "关键词2"],
|
|
31
|
+
"arxivCategories": ["cs.LG"],
|
|
32
|
+
"sources": ["arxiv", "openalex"],
|
|
45
33
|
"currentDay": 0,
|
|
34
|
+
"processed_ids": [],
|
|
46
35
|
"createdAt": "${new Date().toISOString()}"
|
|
47
36
|
}
|
|
48
37
|
\`\`\`
|
|
38
|
+
|
|
39
|
+
> **注意:** \`arxivCategories\` 和 \`sources\` 根据研究领域灵活配置。
|
|
40
|
+
> 自然科学、社会科学等非 CS 领域可将 \`arxivCategories\` 设为 \`[]\`,主要依赖 OpenAlex。
|
|
49
41
|
`;
|
|
50
42
|
}
|
|
51
43
|
export function renderSoulMd(projectName) {
|
|
@@ -58,10 +50,8 @@ export function renderSoulMd(projectName) {
|
|
|
58
50
|
|
|
59
51
|
## 核心域
|
|
60
52
|
关键词: {由 BOOTSTRAP 流程填写}
|
|
61
|
-
arXiv 分类: {由 BOOTSTRAP
|
|
62
|
-
|
|
63
|
-
## 监测带
|
|
64
|
-
相邻领域: {由 BOOTSTRAP 流程填写}
|
|
53
|
+
arXiv 分类: {由 BOOTSTRAP 流程填写,不适用则留空}
|
|
54
|
+
文献来源: {arXiv / OpenAlex / 两者兼用}
|
|
65
55
|
`;
|
|
66
56
|
}
|
|
67
57
|
export function renderAgentsMd() {
|
|
@@ -75,34 +65,29 @@ export function renderAgentsMd() {
|
|
|
75
65
|
$W/
|
|
76
66
|
├── SOUL.md # 身份 + 研究方向
|
|
77
67
|
├── AGENTS.md # 本文档
|
|
78
|
-
├──
|
|
79
|
-
│
|
|
80
|
-
|
|
81
|
-
│
|
|
82
|
-
│
|
|
83
|
-
│
|
|
84
|
-
|
|
85
|
-
│
|
|
86
|
-
|
|
87
|
-
│
|
|
88
|
-
|
|
89
|
-
├──
|
|
90
|
-
│
|
|
91
|
-
│
|
|
92
|
-
|
|
93
|
-
├──
|
|
94
|
-
├──
|
|
95
|
-
│ └──
|
|
96
|
-
|
|
97
|
-
├──
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
├── ml_res.md # /research-implement: 执行报告
|
|
102
|
-
├── iterations/ # /research-review: 审查迭代
|
|
103
|
-
│ └── judge_v*.md
|
|
104
|
-
├── experiment_res.md # /research-experiment: 实验报告
|
|
105
|
-
└── skills/ # workspace skills (metabolism 等)
|
|
68
|
+
├── config.json # 项目配置(关键词、分类、当前天数)
|
|
69
|
+
│
|
|
70
|
+
├── papers/ # 文献区:下载的论文
|
|
71
|
+
│ ├── {arxiv_id}/ # arXiv 论文源文件
|
|
72
|
+
│ └── {doi_slug}.pdf # PDF 文件
|
|
73
|
+
│
|
|
74
|
+
├── knowledge/ # 知识区:持久知识状态
|
|
75
|
+
│ ├── _index.md # 全景索引
|
|
76
|
+
│ └── topic-*.md # 主题文件(上限 50)
|
|
77
|
+
│
|
|
78
|
+
├── ideas/ # 想法区:假设与研究想法
|
|
79
|
+
│ ├── hyp-*.md # 生成的假设
|
|
80
|
+
│ └── selected_idea.md # 选中的研究想法
|
|
81
|
+
│
|
|
82
|
+
├── experiments/ # 实验代码区
|
|
83
|
+
│ ├── run.py # 入口脚本
|
|
84
|
+
│ ├── requirements.txt
|
|
85
|
+
│ └── results/ # 实验结果
|
|
86
|
+
│
|
|
87
|
+
├── log/ # 运行日志
|
|
88
|
+
│ └── {YYYY-MM-DD}.md
|
|
89
|
+
│
|
|
90
|
+
└── skills/ # workspace skills
|
|
106
91
|
\`\`\`
|
|
107
92
|
|
|
108
93
|
## Session Context
|
|
@@ -140,12 +125,13 @@ $W/
|
|
|
140
125
|
|
|
141
126
|
| Skill | Primary Outputs |
|
|
142
127
|
|-------|-----------------|
|
|
143
|
-
| /
|
|
144
|
-
| /research-
|
|
128
|
+
| /metabolism | Day 0: config.json, knowledge/ / Day 1+: papers/, knowledge/, ideas/hyp-*.md, log/ |
|
|
129
|
+
| /research-collect | papers/ |
|
|
130
|
+
| /research-survey | knowledge/, survey_res.md |
|
|
145
131
|
| /research-plan | plan_res.md |
|
|
146
|
-
| /research-implement |
|
|
147
|
-
| /research-review |
|
|
148
|
-
| /research-experiment |
|
|
132
|
+
| /research-implement | experiments/ |
|
|
133
|
+
| /research-review | experiments/review/ |
|
|
134
|
+
| /research-experiment | experiments/results/ |
|
|
149
135
|
| /idea-generation | ideas/ |
|
|
150
136
|
| /write-review-paper | review/ |
|
|
151
137
|
`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/templates/bootstrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,OAAO;;YAEG,WAAW;;;;kBAIL,WAAW;;;;;;;;;;;;;;;;;kBAiBX,WAAW
|
|
1
|
+
{"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../../../src/templates/bootstrap.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,MAAM,UAAU,iBAAiB,CAAC,WAAmB;IACnD,OAAO;;YAEG,WAAW;;;;kBAIL,WAAW;;;;;;;;;;;;;;;;;kBAiBX,WAAW;;;;;;kBAMX,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;;;;;;CAMzC,CAAC;AACF,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,WAAmB;IAC9C,OAAO,qBAAqB,WAAW;;OAElC,WAAW;;;;;;;;;CASjB,CAAC;AACF,CAAC;AAED,MAAM,UAAU,cAAc;IAC5B,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA+ER,CAAC;AACF,CAAC"}
|
package/dist/src/types.d.ts
CHANGED
|
@@ -1,16 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Re-export SDK types and derive types not directly exported.
|
|
3
|
-
*
|
|
4
|
-
* OpenClaw plugin-entry exports OpenClawPluginApi, PluginCommandContext,
|
|
5
|
-
* PluginLogger, etc. — but not PluginRuntime, PluginCommandResult, or
|
|
6
|
-
* RunCommandResult. We derive those from the exported interfaces.
|
|
7
3
|
*/
|
|
8
|
-
import type { OpenClawPluginApi, PluginCommandContext,
|
|
9
|
-
export type { OpenClawPluginApi, PluginCommandContext
|
|
10
|
-
/** Derived from OpenClawPluginApi["runtime"] */
|
|
11
|
-
export type PluginRuntime = OpenClawPluginApi["runtime"];
|
|
4
|
+
import type { OpenClawPluginApi, PluginCommandContext, OpenClawPluginCommandDefinition } from "openclaw/plugin-sdk/plugin-entry";
|
|
5
|
+
export type { OpenClawPluginApi, PluginCommandContext };
|
|
12
6
|
/** Derived from the return type of command handlers */
|
|
13
7
|
export type PluginCommandResult = Awaited<ReturnType<OpenClawPluginCommandDefinition["handler"]>>;
|
|
14
|
-
/** Derived from runtime.system.runCommandWithTimeout return type */
|
|
15
|
-
export type RunCommandResult = Awaited<ReturnType<PluginRuntime["system"]["runCommandWithTimeout"]>>;
|
|
16
8
|
//# sourceMappingURL=types.d.ts.map
|
package/dist/src/types.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,KAAK,EACV,iBAAiB,EACjB,oBAAoB,EACpB,+BAA+B,EAChC,MAAM,kCAAkC,CAAC;AAE1C,YAAY,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,CAAC;AAExD,uDAAuD;AACvD,MAAM,MAAM,mBAAmB,GAAG,OAAO,CACvC,UAAU,CAAC,+BAA+B,CAAC,SAAS,CAAC,CAAC,CACvD,CAAC"}
|