@zenalexa/unicli 0.221.0 → 0.222.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/AGENTS.md +12 -12
- package/README.md +40 -31
- package/README.zh-CN.md +37 -31
- package/crates/unicli-atspi/src/errors.rs +2 -2
- package/crates/unicli-uia/src/errors.rs +1 -1
- package/dist/adapters/acl-anthology/papers.d.ts +16 -0
- package/dist/adapters/acl-anthology/papers.d.ts.map +1 -0
- package/dist/adapters/acl-anthology/papers.js +135 -0
- package/dist/adapters/acl-anthology/papers.js.map +1 -0
- package/dist/adapters/arxiv/papers.js +2 -0
- package/dist/adapters/arxiv/papers.js.map +1 -1
- package/dist/adapters/baidu-scholar/search.js +5 -0
- package/dist/adapters/baidu-scholar/search.js.map +1 -1
- package/dist/adapters/crossref/works.d.ts +42 -0
- package/dist/adapters/crossref/works.d.ts.map +1 -0
- package/dist/adapters/crossref/works.js +157 -0
- package/dist/adapters/crossref/works.js.map +1 -0
- package/dist/adapters/cvf/papers.d.ts +17 -0
- package/dist/adapters/cvf/papers.d.ts.map +1 -0
- package/dist/adapters/cvf/papers.js +124 -0
- package/dist/adapters/cvf/papers.js.map +1 -0
- package/dist/adapters/dblp/publications.js +4 -0
- package/dist/adapters/dblp/publications.js.map +1 -1
- package/dist/adapters/google-scholar/cite.js +1 -0
- package/dist/adapters/google-scholar/cite.js.map +1 -1
- package/dist/adapters/google-scholar/profile.js +5 -0
- package/dist/adapters/google-scholar/profile.js.map +1 -1
- package/dist/adapters/google-scholar/search.js +5 -0
- package/dist/adapters/google-scholar/search.js.map +1 -1
- package/dist/adapters/hf/paper.js +1 -0
- package/dist/adapters/hf/paper.js.map +1 -1
- package/dist/adapters/neurips/proceedings.d.ts +17 -0
- package/dist/adapters/neurips/proceedings.d.ts.map +1 -0
- package/dist/adapters/neurips/proceedings.js +112 -0
- package/dist/adapters/neurips/proceedings.js.map +1 -0
- package/dist/adapters/openalex/works.d.ts.map +1 -1
- package/dist/adapters/openalex/works.js +32 -0
- package/dist/adapters/openalex/works.js.map +1 -1
- package/dist/adapters/openreview/papers.js +5 -0
- package/dist/adapters/openreview/papers.js.map +1 -1
- package/dist/adapters/pmlr/proceedings.d.ts +35 -0
- package/dist/adapters/pmlr/proceedings.d.ts.map +1 -0
- package/dist/adapters/pmlr/proceedings.js +139 -0
- package/dist/adapters/pmlr/proceedings.js.map +1 -0
- package/dist/adapters/pubmed/articles.js +5 -0
- package/dist/adapters/pubmed/articles.js.map +1 -1
- package/dist/adapters/semantic-scholar/papers.d.ts +36 -0
- package/dist/adapters/semantic-scholar/papers.d.ts.map +1 -0
- package/dist/adapters/semantic-scholar/papers.js +214 -0
- package/dist/adapters/semantic-scholar/papers.js.map +1 -0
- package/dist/adapters/unpaywall/works.d.ts +33 -0
- package/dist/adapters/unpaywall/works.d.ts.map +1 -0
- package/dist/adapters/unpaywall/works.js +101 -0
- package/dist/adapters/unpaywall/works.js.map +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +15 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/compute.d.ts.map +1 -1
- package/dist/commands/compute.js +1 -1
- package/dist/commands/compute.js.map +1 -1
- package/dist/commands/do.d.ts +30 -0
- package/dist/commands/do.d.ts.map +1 -0
- package/dist/commands/do.js +248 -0
- package/dist/commands/do.js.map +1 -0
- package/dist/commands/doctor-compute.js +11 -7
- package/dist/commands/doctor-compute.js.map +1 -1
- package/dist/commands/extract.d.ts +34 -0
- package/dist/commands/extract.d.ts.map +1 -0
- package/dist/commands/extract.js +316 -0
- package/dist/commands/extract.js.map +1 -0
- package/dist/commands/lint.js +3 -3
- package/dist/commands/lint.js.map +1 -1
- package/dist/commands/migrate-schema.d.ts.map +1 -1
- package/dist/commands/migrate-schema.js +26 -22
- package/dist/commands/migrate-schema.js.map +1 -1
- package/dist/commands/scholar.d.ts +33 -0
- package/dist/commands/scholar.d.ts.map +1 -0
- package/dist/commands/scholar.js +494 -0
- package/dist/commands/scholar.js.map +1 -0
- package/dist/commands/search.d.ts.map +1 -1
- package/dist/commands/search.js +2 -5
- package/dist/commands/search.js.map +1 -1
- package/dist/discovery/aliases.d.ts +2 -2
- package/dist/discovery/aliases.d.ts.map +1 -1
- package/dist/discovery/aliases.js +182 -11
- package/dist/discovery/aliases.js.map +1 -1
- package/dist/discovery/intents.d.ts +10 -0
- package/dist/discovery/intents.d.ts.map +1 -0
- package/dist/discovery/intents.js +255 -0
- package/dist/discovery/intents.js.map +1 -0
- package/dist/discovery/loader.d.ts.map +1 -1
- package/dist/discovery/loader.js +47 -2
- package/dist/discovery/loader.js.map +1 -1
- package/dist/discovery/search.d.ts +4 -1
- package/dist/discovery/search.d.ts.map +1 -1
- package/dist/discovery/search.js +28 -140
- package/dist/discovery/search.js.map +1 -1
- package/dist/electron-apps.d.ts +1 -1
- package/dist/electron-apps.d.ts.map +1 -1
- package/dist/electron-apps.js +2 -2
- package/dist/electron-apps.js.map +1 -1
- package/dist/engine/executor.d.ts +1 -1
- package/dist/engine/executor.js +7 -7
- package/dist/engine/executor.js.map +1 -1
- package/dist/engine/repair/remedies.js +3 -3
- package/dist/engine/repair/remedies.js.map +1 -1
- package/dist/engine/steps/desktop-ax.d.ts +4 -0
- package/dist/engine/steps/desktop-ax.d.ts.map +1 -1
- package/dist/engine/steps/desktop-ax.js +8 -0
- package/dist/engine/steps/desktop-ax.js.map +1 -1
- package/dist/engine/steps/desktop-sidecar.d.ts +1 -1
- package/dist/engine/steps/desktop-sidecar.js +1 -1
- package/dist/engine/steps/index.d.ts +1 -1
- package/dist/engine/steps/index.d.ts.map +1 -1
- package/dist/engine/steps/index.js +1 -1
- package/dist/engine/steps/index.js.map +1 -1
- package/dist/engine/steps/visual.d.ts +47 -0
- package/dist/engine/steps/visual.d.ts.map +1 -0
- package/dist/engine/steps/visual.js +66 -0
- package/dist/engine/steps/visual.js.map +1 -0
- package/dist/engine/transport/mcp-browser.d.ts +1 -1
- package/dist/engine/transport/mcp-browser.js +1 -1
- package/dist/fast-path/handlers/discovery.d.ts.map +1 -1
- package/dist/fast-path/handlers/discovery.js +17 -3
- package/dist/fast-path/handlers/discovery.js.map +1 -1
- package/dist/manifest-compact.txt +13 -11
- package/dist/manifest-search.json +1 -1
- package/dist/manifest.json +529 -121
- package/dist/mcp/handler.d.ts.map +1 -1
- package/dist/mcp/handler.js +14 -2
- package/dist/mcp/handler.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +11 -3
- package/dist/mcp/tools.js.map +1 -1
- package/dist/registry.d.ts +1 -0
- package/dist/registry.d.ts.map +1 -1
- package/dist/registry.js +5 -0
- package/dist/registry.js.map +1 -1
- package/dist/transport/adapters/desktop-atspi.js +1 -1
- package/dist/transport/adapters/desktop-atspi.js.map +1 -1
- package/dist/transport/adapters/desktop-ax-background-activation-swift.d.ts +9 -0
- package/dist/transport/adapters/desktop-ax-background-activation-swift.d.ts.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-activation-swift.js +99 -0
- package/dist/transport/adapters/desktop-ax-background-activation-swift.js.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-click-swift.d.ts.map +1 -1
- package/dist/transport/adapters/desktop-ax-background-click-swift.js +10 -133
- package/dist/transport/adapters/desktop-ax-background-click-swift.js.map +1 -1
- package/dist/transport/adapters/desktop-ax-background-click.d.ts +1 -3
- package/dist/transport/adapters/desktop-ax-background-click.d.ts.map +1 -1
- package/dist/transport/adapters/desktop-ax-background-click.js +1 -69
- package/dist/transport/adapters/desktop-ax-background-click.js.map +1 -1
- package/dist/transport/adapters/desktop-ax-background-dispatch-swift.d.ts +9 -0
- package/dist/transport/adapters/desktop-ax-background-dispatch-swift.d.ts.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-dispatch-swift.js +169 -0
- package/dist/transport/adapters/desktop-ax-background-dispatch-swift.js.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-input-swift.d.ts +23 -0
- package/dist/transport/adapters/desktop-ax-background-input-swift.d.ts.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-input-swift.js +157 -0
- package/dist/transport/adapters/desktop-ax-background-input-swift.js.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-input.d.ts +13 -0
- package/dist/transport/adapters/desktop-ax-background-input.d.ts.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-input.js +124 -0
- package/dist/transport/adapters/desktop-ax-background-input.js.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-window-swift.d.ts +9 -0
- package/dist/transport/adapters/desktop-ax-background-window-swift.d.ts.map +1 -0
- package/dist/transport/adapters/desktop-ax-background-window-swift.js +110 -0
- package/dist/transport/adapters/desktop-ax-background-window-swift.js.map +1 -0
- package/dist/transport/adapters/desktop-ax-swift.d.ts +1 -0
- package/dist/transport/adapters/desktop-ax-swift.d.ts.map +1 -1
- package/dist/transport/adapters/desktop-ax-swift.js +1 -0
- package/dist/transport/adapters/desktop-ax-swift.js.map +1 -1
- package/dist/transport/adapters/desktop-ax.d.ts +4 -1
- package/dist/transport/adapters/desktop-ax.d.ts.map +1 -1
- package/dist/transport/adapters/desktop-ax.js +57 -6
- package/dist/transport/adapters/desktop-ax.js.map +1 -1
- package/dist/transport/adapters/desktop-uia.js +1 -1
- package/dist/transport/adapters/desktop-uia.js.map +1 -1
- package/dist/transport/adapters/visual.d.ts +114 -0
- package/dist/transport/adapters/visual.d.ts.map +1 -0
- package/dist/transport/adapters/visual.js +473 -0
- package/dist/transport/adapters/visual.js.map +1 -0
- package/dist/transport/bus.d.ts +1 -1
- package/dist/transport/bus.js +3 -3
- package/dist/transport/bus.js.map +1 -1
- package/dist/transport/capability.d.ts.map +1 -1
- package/dist/transport/capability.js +32 -30
- package/dist/transport/capability.js.map +1 -1
- package/dist/transport/cascade.js +27 -27
- package/dist/transport/cascade.js.map +1 -1
- package/dist/transport/types.d.ts +5 -5
- package/dist/transport/types.d.ts.map +1 -1
- package/dist/transport/types.js +1 -1
- package/dist/types/scholarly.d.ts +49 -0
- package/dist/types/scholarly.d.ts.map +1 -0
- package/dist/types/scholarly.js +16 -0
- package/dist/types/scholarly.js.map +1 -0
- package/docs/operate/compute.md +20 -7
- package/docs/operate/focus-behavior.md +21 -12
- package/docs/operate/troubleshooting.md +17 -12
- package/package.json +5 -11
- package/server.json +2 -2
- package/skills/unicli/SKILL.md +1 -1
- package/skills/unicli-claude-code/SKILL.md +1 -1
- package/skills/unicli-hermes/SKILL.md +1 -1
- package/skills/unicli-repair/references/error-codes.md +7 -7
- package/src/adapters/_archived/README.md +6 -6
- package/src/adapters/_archived/apple-music/rate-album.yaml +15 -15
- package/src/adapters/_archived/archive.json +2 -2
- package/src/adapters/acl-anthology/papers.ts +157 -0
- package/src/adapters/arxiv/download.yaml +1 -1
- package/src/adapters/arxiv/paper.yaml +1 -1
- package/src/adapters/arxiv/papers.ts +2 -0
- package/src/adapters/arxiv/search.yaml +1 -1
- package/src/adapters/arxiv/trending.yaml +1 -1
- package/src/adapters/baidu-scholar/search.ts +5 -0
- package/src/adapters/crossref/works.ts +209 -0
- package/src/adapters/cvf/papers.ts +136 -0
- package/src/adapters/dblp/publications.ts +4 -0
- package/src/adapters/figma/export-selected.yaml +16 -16
- package/src/adapters/google-scholar/cite.ts +1 -0
- package/src/adapters/google-scholar/profile.ts +5 -0
- package/src/adapters/google-scholar/search.ts +5 -0
- package/src/adapters/hf/paper.test.ts +10 -0
- package/src/adapters/hf/paper.ts +1 -0
- package/src/adapters/hf/top.yaml +1 -1
- package/src/adapters/huggingface-papers/daily.yaml +1 -1
- package/src/adapters/huggingface-papers/search.yaml +1 -1
- package/src/adapters/neurips/proceedings.ts +126 -0
- package/src/adapters/openalex/works.test.ts +40 -32
- package/src/adapters/openalex/works.ts +33 -0
- package/src/adapters/openreview/papers.ts +5 -0
- package/src/adapters/pmlr/proceedings.ts +167 -0
- package/src/adapters/pubmed/articles.ts +5 -0
- package/src/adapters/semantic-scholar/papers.ts +268 -0
- package/src/adapters/unpaywall/works.ts +138 -0
- package/src/adapters/zoom/toggle-mute.yaml +1 -1
- package/src/adapters/zotero/search.yaml +1 -1
- package/dist/engine/steps/cua.d.ts +0 -41
- package/dist/engine/steps/cua.d.ts.map +0 -1
- package/dist/engine/steps/cua.js +0 -59
- package/dist/engine/steps/cua.js.map +0 -1
- package/dist/transport/adapters/cua.d.ts +0 -239
- package/dist/transport/adapters/cua.d.ts.map +0 -1
- package/dist/transport/adapters/cua.js +0 -661
- package/dist/transport/adapters/cua.js.map +0 -1
- package/src/adapters/cua/bench-list.yaml +0 -28
- package/src/adapters/cua/bench-run.yaml +0 -40
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @owner src::adapters::pmlr::proceedings
|
|
3
|
+
* @does Registers Proceedings of Machine Learning Research volume search using official citeproc.yaml metadata.
|
|
4
|
+
* @needs proceedings.mlr.press citeproc.yaml files, js-yaml, src/registry.ts
|
|
5
|
+
* @feeds src/commands/scholar.ts via scholar.search, scholar.get, scholar.pdf, and scholar.venue
|
|
6
|
+
* @breaks Missing volume metadata or citeproc drift surfaces as explicit adapter errors.
|
|
7
|
+
* @invariants Volume is explicit; rows are filtered locally from official YAML metadata, not scraped from rendered cards.
|
|
8
|
+
* @side-effects HTTPS egress to proceedings.mlr.press only
|
|
9
|
+
* @perf O(N) over one proceedings volume
|
|
10
|
+
* @concurrency safe
|
|
11
|
+
* @test tests/unit/adapters/scholar-sources.test.ts
|
|
12
|
+
* @stability experimental
|
|
13
|
+
* @since 2026-05-19
|
|
14
|
+
*/
|
|
15
|
+
import yaml from "js-yaml";
|
|
16
|
+
import { cli, Strategy } from "../../registry.js";
|
|
17
|
+
function str(value) {
|
|
18
|
+
return typeof value === "string" ? value.trim() : "";
|
|
19
|
+
}
|
|
20
|
+
function authors(value) {
|
|
21
|
+
if (!Array.isArray(value))
|
|
22
|
+
return undefined;
|
|
23
|
+
const out = value
|
|
24
|
+
.map((person) => [person.given, person.family].map(str).filter(Boolean).join(" "))
|
|
25
|
+
.filter(Boolean);
|
|
26
|
+
return out.length > 0 ? out : undefined;
|
|
27
|
+
}
|
|
28
|
+
function issuedYear(entry) {
|
|
29
|
+
const first = entry.issued?.["date-parts"]?.[0];
|
|
30
|
+
return typeof first === "number" && Number.isFinite(first)
|
|
31
|
+
? first
|
|
32
|
+
: undefined;
|
|
33
|
+
}
|
|
34
|
+
export function parsePmlrCiteproc(text) {
|
|
35
|
+
const parsed = yaml.load(text);
|
|
36
|
+
return Array.isArray(parsed) ? parsed : [];
|
|
37
|
+
}
|
|
38
|
+
export function mapPmlrEntry(entry, source) {
|
|
39
|
+
const id = str(entry.id);
|
|
40
|
+
if (!id)
|
|
41
|
+
throw new Error("PMLR entry did not include id.");
|
|
42
|
+
return {
|
|
43
|
+
id,
|
|
44
|
+
title: str(entry.title),
|
|
45
|
+
abstract: str(entry.abstract) || undefined,
|
|
46
|
+
authors: authors(entry.author),
|
|
47
|
+
year: issuedYear(entry),
|
|
48
|
+
venue: str(entry["container-title"]) || undefined,
|
|
49
|
+
type: entry.volume ? `pmlr:${String(entry.volume)}` : "pmlr",
|
|
50
|
+
pdf_url: str(entry.PDF) || undefined,
|
|
51
|
+
source_adapter: source,
|
|
52
|
+
source_url: str(entry.URL) || undefined,
|
|
53
|
+
retrieved_at: new Date().toISOString(),
|
|
54
|
+
};
|
|
55
|
+
}
|
|
56
|
+
function requireVolume(value) {
|
|
57
|
+
const raw = String(value ?? "")
|
|
58
|
+
.trim()
|
|
59
|
+
.replace(/^v/i, "");
|
|
60
|
+
if (!/^\d+$/.test(raw))
|
|
61
|
+
throw new Error(`pmlr volume "${String(value)}" is not valid.`);
|
|
62
|
+
return raw;
|
|
63
|
+
}
|
|
64
|
+
async function fetchVolume(volume) {
|
|
65
|
+
const response = await fetch(`https://proceedings.mlr.press/v${volume}/assets/bib/citeproc.yaml`, {
|
|
66
|
+
headers: {
|
|
67
|
+
Accept: "application/x-yaml,text/yaml,text/plain",
|
|
68
|
+
"User-Agent": "unicli-pmlr/1.0 (https://github.com/olo-dot-io/Uni-CLI)",
|
|
69
|
+
},
|
|
70
|
+
});
|
|
71
|
+
if (response.status === 404)
|
|
72
|
+
throw new Error(`PMLR volume v${volume} returned no metadata.`);
|
|
73
|
+
if (!response.ok)
|
|
74
|
+
throw new Error(`PMLR volume v${volume} returned HTTP ${response.status}.`);
|
|
75
|
+
return parsePmlrCiteproc(await response.text());
|
|
76
|
+
}
|
|
77
|
+
cli({
|
|
78
|
+
site: "pmlr",
|
|
79
|
+
name: "search",
|
|
80
|
+
description: "Search a PMLR proceedings volume (e.g. v235 for ICML 2024)",
|
|
81
|
+
domain: "proceedings.mlr.press",
|
|
82
|
+
strategy: Strategy.PUBLIC,
|
|
83
|
+
args: [
|
|
84
|
+
{ name: "query", type: "str", required: true, positional: true },
|
|
85
|
+
{ name: "volume", type: "str", default: "235" },
|
|
86
|
+
{ name: "limit", type: "int", default: 20 },
|
|
87
|
+
],
|
|
88
|
+
columns: ["id", "title", "authors", "year", "venue", "pdf_url", "source_url"],
|
|
89
|
+
capabilities: [
|
|
90
|
+
"http.fetch",
|
|
91
|
+
"scholar.search",
|
|
92
|
+
"scholar.venue",
|
|
93
|
+
"scholar.pdf",
|
|
94
|
+
],
|
|
95
|
+
func: async (_page, kwargs) => {
|
|
96
|
+
const query = String(kwargs.query ?? "")
|
|
97
|
+
.trim()
|
|
98
|
+
.toLowerCase();
|
|
99
|
+
if (!query)
|
|
100
|
+
throw new Error("pmlr search query cannot be empty.");
|
|
101
|
+
const volume = requireVolume(kwargs.volume);
|
|
102
|
+
const limit = Math.min(Math.max(Number(kwargs.limit ?? 20), 1), 200);
|
|
103
|
+
const rows = (await fetchVolume(volume))
|
|
104
|
+
.map((entry) => mapPmlrEntry(entry, "pmlr"))
|
|
105
|
+
.filter((row) => `${row.title} ${row.abstract ?? ""} ${row.authors?.join(" ") ?? ""}`
|
|
106
|
+
.toLowerCase()
|
|
107
|
+
.includes(query))
|
|
108
|
+
.slice(0, limit);
|
|
109
|
+
if (rows.length === 0)
|
|
110
|
+
throw new Error(`No PMLR v${volume} papers matched "${query}".`);
|
|
111
|
+
return rows;
|
|
112
|
+
},
|
|
113
|
+
});
|
|
114
|
+
cli({
|
|
115
|
+
site: "pmlr",
|
|
116
|
+
name: "paper",
|
|
117
|
+
description: "Fetch a PMLR paper by id inside a proceedings volume",
|
|
118
|
+
domain: "proceedings.mlr.press",
|
|
119
|
+
strategy: Strategy.PUBLIC,
|
|
120
|
+
args: [
|
|
121
|
+
{ name: "id", type: "str", required: true, positional: true },
|
|
122
|
+
{ name: "volume", type: "str", default: "235" },
|
|
123
|
+
],
|
|
124
|
+
columns: ["id", "title", "authors", "year", "venue", "pdf_url", "source_url"],
|
|
125
|
+
capabilities: ["http.fetch", "scholar.get", "scholar.pdf"],
|
|
126
|
+
func: async (_page, kwargs) => {
|
|
127
|
+
const id = String(kwargs.id ?? kwargs.ref ?? "").trim();
|
|
128
|
+
if (!id)
|
|
129
|
+
throw new Error("pmlr paper id is required.");
|
|
130
|
+
const volume = requireVolume(kwargs.volume);
|
|
131
|
+
const row = (await fetchVolume(volume))
|
|
132
|
+
.map((entry) => mapPmlrEntry(entry, "pmlr"))
|
|
133
|
+
.find((entry) => entry.id === id);
|
|
134
|
+
if (!row)
|
|
135
|
+
throw new Error(`No PMLR v${volume} paper found with id "${id}".`);
|
|
136
|
+
return [row];
|
|
137
|
+
},
|
|
138
|
+
});
|
|
139
|
+
//# sourceMappingURL=proceedings.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"proceedings.js","sourceRoot":"","sources":["../../../src/adapters/pmlr/proceedings.ts"],"names":[],"mappings":"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"}
|
|
@@ -222,6 +222,7 @@ cli({
|
|
|
222
222
|
{ name: "limit", type: "int", default: 20, description: "Max results" },
|
|
223
223
|
],
|
|
224
224
|
columns: SUMMARY_COLUMNS,
|
|
225
|
+
capabilities: ["http.fetch", "scholar.search"],
|
|
225
226
|
func: async (_page, kwargs) => {
|
|
226
227
|
const query = requirePubMedText(kwargs.query, "query");
|
|
227
228
|
const limit = requirePubMedLimit(kwargs.limit);
|
|
@@ -260,6 +261,7 @@ cli({
|
|
|
260
261
|
},
|
|
261
262
|
],
|
|
262
263
|
columns: ["field", "value"],
|
|
264
|
+
capabilities: ["http.fetch", "scholar.get"],
|
|
263
265
|
func: async (_page, kwargs) => {
|
|
264
266
|
const pmid = requirePmid(kwargs.pmid);
|
|
265
267
|
const xml = String(await eutilsFetch("efetch", { id: pmid, rettype: "abstract" }, "xml"));
|
|
@@ -283,6 +285,7 @@ cli({
|
|
|
283
285
|
{ name: "limit", type: "int", default: 20, description: "Max results" },
|
|
284
286
|
],
|
|
285
287
|
columns: SUMMARY_COLUMNS,
|
|
288
|
+
capabilities: ["http.fetch", "scholar.author", "scholar.search"],
|
|
286
289
|
func: async (_page, kwargs) => {
|
|
287
290
|
const name = requirePubMedText(kwargs.name, "author");
|
|
288
291
|
const limit = requirePubMedLimit(kwargs.limit);
|
|
@@ -323,6 +326,7 @@ cli({
|
|
|
323
326
|
{ name: "limit", type: "int", default: 20, description: "Max results" },
|
|
324
327
|
],
|
|
325
328
|
columns: SUMMARY_COLUMNS,
|
|
329
|
+
capabilities: ["http.fetch", "scholar.citations", "scholar.references"],
|
|
326
330
|
func: async (_page, kwargs) => {
|
|
327
331
|
const pmid = requirePmid(kwargs.pmid);
|
|
328
332
|
const direction = requireChoice(kwargs.direction, ["citedby", "references"], "direction", "citedby");
|
|
@@ -358,6 +362,7 @@ cli({
|
|
|
358
362
|
{ name: "limit", type: "int", default: 20, description: "Max results" },
|
|
359
363
|
],
|
|
360
364
|
columns: RELATED_COLUMNS,
|
|
365
|
+
capabilities: ["http.fetch", "scholar.search"],
|
|
361
366
|
func: async (_page, kwargs) => {
|
|
362
367
|
const pmid = requirePmid(kwargs.pmid);
|
|
363
368
|
const limit = requirePubMedLimit(kwargs.limit);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"articles.js","sourceRoot":"","sources":["../../../src/adapters/pubmed/articles.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"articles.js","sourceRoot":"","sources":["../../../src/adapters/pubmed/articles.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @owner src::adapters::semantic-scholar::papers
|
|
3
|
+
* @does Registers Semantic Scholar Graph API paper search, detail, citations, references, and PDF discovery commands.
|
|
4
|
+
* @needs api.semanticscholar.org Graph v1, optional SEMANTIC_SCHOLAR_API_KEY, src/registry.ts
|
|
5
|
+
* @feeds src/commands/scholar.ts via scholar.* capability tags
|
|
6
|
+
* @breaks Graph API rate limits or response-shape drift surface as explicit adapter errors; no cached fallback is used.
|
|
7
|
+
* @invariants Paper references are normalized to Semantic Scholar's accepted DOI:/ARXIV:/paperId formats; output maps to ScholarlyWorkRecord.
|
|
8
|
+
* @side-effects HTTPS egress to api.semanticscholar.org only
|
|
9
|
+
* @perf O(limit) JSON mapping per command
|
|
10
|
+
* @concurrency safe
|
|
11
|
+
* @test tests/unit/adapters/scholar-sources.test.ts
|
|
12
|
+
* @stability experimental
|
|
13
|
+
* @since 2026-05-19
|
|
14
|
+
*/
|
|
15
|
+
import type { ScholarlyWorkRecord } from "../../types/scholarly.js";
|
|
16
|
+
interface S2Paper {
|
|
17
|
+
paperId?: unknown;
|
|
18
|
+
title?: unknown;
|
|
19
|
+
abstract?: unknown;
|
|
20
|
+
year?: unknown;
|
|
21
|
+
authors?: Array<{
|
|
22
|
+
name?: unknown;
|
|
23
|
+
}>;
|
|
24
|
+
citationCount?: unknown;
|
|
25
|
+
referenceCount?: unknown;
|
|
26
|
+
venue?: unknown;
|
|
27
|
+
url?: unknown;
|
|
28
|
+
openAccessPdf?: {
|
|
29
|
+
url?: unknown;
|
|
30
|
+
};
|
|
31
|
+
externalIds?: Record<string, unknown>;
|
|
32
|
+
}
|
|
33
|
+
export declare function requireSemanticScholarPaperRef(value: unknown): string;
|
|
34
|
+
export declare function mapSemanticScholarPaper(paper: S2Paper, source: string): ScholarlyWorkRecord;
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=papers.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"papers.d.ts","sourceRoot":"","sources":["../../../src/adapters/semantic-scholar/papers.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAkBpE,UAAU,OAAO;IACf,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,OAAO,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IACpC,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,aAAa,CAAC,EAAE;QAAE,GAAG,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;IAClC,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACvC;AA0BD,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAcrE;AAmCD,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,OAAO,EACd,MAAM,EAAE,MAAM,GACb,mBAAmB,CAyBrB"}
|
|
@@ -0,0 +1,214 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @owner src::adapters::semantic-scholar::papers
|
|
3
|
+
* @does Registers Semantic Scholar Graph API paper search, detail, citations, references, and PDF discovery commands.
|
|
4
|
+
* @needs api.semanticscholar.org Graph v1, optional SEMANTIC_SCHOLAR_API_KEY, src/registry.ts
|
|
5
|
+
* @feeds src/commands/scholar.ts via scholar.* capability tags
|
|
6
|
+
* @breaks Graph API rate limits or response-shape drift surface as explicit adapter errors; no cached fallback is used.
|
|
7
|
+
* @invariants Paper references are normalized to Semantic Scholar's accepted DOI:/ARXIV:/paperId formats; output maps to ScholarlyWorkRecord.
|
|
8
|
+
* @side-effects HTTPS egress to api.semanticscholar.org only
|
|
9
|
+
* @perf O(limit) JSON mapping per command
|
|
10
|
+
* @concurrency safe
|
|
11
|
+
* @test tests/unit/adapters/scholar-sources.test.ts
|
|
12
|
+
* @stability experimental
|
|
13
|
+
* @since 2026-05-19
|
|
14
|
+
*/
|
|
15
|
+
import { cli, Strategy } from "../../registry.js";
|
|
16
|
+
const API = "https://api.semanticscholar.org/graph/v1";
|
|
17
|
+
const FIELDS = [
|
|
18
|
+
"paperId",
|
|
19
|
+
"title",
|
|
20
|
+
"abstract",
|
|
21
|
+
"year",
|
|
22
|
+
"authors",
|
|
23
|
+
"citationCount",
|
|
24
|
+
"referenceCount",
|
|
25
|
+
"venue",
|
|
26
|
+
"publicationVenue",
|
|
27
|
+
"url",
|
|
28
|
+
"openAccessPdf",
|
|
29
|
+
"externalIds",
|
|
30
|
+
].join(",");
|
|
31
|
+
function str(value) {
|
|
32
|
+
return typeof value === "string" ? value.trim() : "";
|
|
33
|
+
}
|
|
34
|
+
function num(value) {
|
|
35
|
+
return typeof value === "number" && Number.isFinite(value)
|
|
36
|
+
? value
|
|
37
|
+
: undefined;
|
|
38
|
+
}
|
|
39
|
+
function bareDoi(value) {
|
|
40
|
+
return str(value)
|
|
41
|
+
.replace(/^doi:/i, "")
|
|
42
|
+
.replace(/^https?:\/\/(?:dx\.)?doi\.org\//i, "");
|
|
43
|
+
}
|
|
44
|
+
function bareArxiv(value) {
|
|
45
|
+
return str(value)
|
|
46
|
+
.replace(/^arxiv:/i, "")
|
|
47
|
+
.replace(/^https?:\/\/arxiv\.org\/(?:abs|pdf)\//i, "")
|
|
48
|
+
.replace(/\.pdf$/i, "")
|
|
49
|
+
.replace(/v\d+$/i, "");
|
|
50
|
+
}
|
|
51
|
+
export function requireSemanticScholarPaperRef(value) {
|
|
52
|
+
const raw = String(value ?? "").trim();
|
|
53
|
+
if (!raw)
|
|
54
|
+
throw new Error("semantic-scholar paper reference is required.");
|
|
55
|
+
const doi = bareDoi(raw);
|
|
56
|
+
if (/^10\.\S+\/\S+/.test(doi))
|
|
57
|
+
return `DOI:${doi}`;
|
|
58
|
+
if (/^(?:arxiv:|https?:\/\/arxiv\.org\/(?:abs|pdf)\/|\d{4}\.\d{4,5})/i.test(raw)) {
|
|
59
|
+
return `ARXIV:${bareArxiv(raw)}`;
|
|
60
|
+
}
|
|
61
|
+
if (/^[a-f0-9]{40}$/i.test(raw))
|
|
62
|
+
return raw;
|
|
63
|
+
throw new Error(`semantic-scholar paper reference "${raw}" is not recognised.`);
|
|
64
|
+
}
|
|
65
|
+
function headers() {
|
|
66
|
+
const out = {
|
|
67
|
+
Accept: "application/json",
|
|
68
|
+
"User-Agent": "unicli-semantic-scholar/1.0 (https://github.com/olo-dot-io/Uni-CLI)",
|
|
69
|
+
};
|
|
70
|
+
const key = process.env.SEMANTIC_SCHOLAR_API_KEY?.trim();
|
|
71
|
+
if (key)
|
|
72
|
+
out["x-api-key"] = key;
|
|
73
|
+
return out;
|
|
74
|
+
}
|
|
75
|
+
async function fetchS2(path, label) {
|
|
76
|
+
const response = await fetch(`${API}${path}`, { headers: headers() });
|
|
77
|
+
if (response.status === 404)
|
|
78
|
+
throw new Error(`${label} returned no result.`);
|
|
79
|
+
if (response.status === 429) {
|
|
80
|
+
throw new Error(`${label} returned HTTP 429; set SEMANTIC_SCHOLAR_API_KEY or retry later.`);
|
|
81
|
+
}
|
|
82
|
+
if (!response.ok)
|
|
83
|
+
throw new Error(`${label} returned HTTP ${response.status}.`);
|
|
84
|
+
const json = (await response.json());
|
|
85
|
+
if (json.error || json.message) {
|
|
86
|
+
throw new Error(`${label} returned API error: ${String(json.error ?? json.message)}.`);
|
|
87
|
+
}
|
|
88
|
+
return json;
|
|
89
|
+
}
|
|
90
|
+
export function mapSemanticScholarPaper(paper, source) {
|
|
91
|
+
const id = str(paper.paperId);
|
|
92
|
+
if (!id)
|
|
93
|
+
throw new Error("Semantic Scholar returned a paper without paperId.");
|
|
94
|
+
const doi = bareDoi(paper.externalIds?.DOI);
|
|
95
|
+
const arxiv = bareArxiv(paper.externalIds?.ArXiv);
|
|
96
|
+
return {
|
|
97
|
+
id,
|
|
98
|
+
title: str(paper.title),
|
|
99
|
+
abstract: str(paper.abstract) || undefined,
|
|
100
|
+
authors: Array.isArray(paper.authors)
|
|
101
|
+
? paper.authors.map((author) => str(author.name)).filter(Boolean)
|
|
102
|
+
: undefined,
|
|
103
|
+
year: num(paper.year),
|
|
104
|
+
venue: str(paper.venue) || undefined,
|
|
105
|
+
doi: doi || undefined,
|
|
106
|
+
arxiv_id: arxiv || undefined,
|
|
107
|
+
semantic_scholar_id: id,
|
|
108
|
+
cited_by_count: num(paper.citationCount),
|
|
109
|
+
references_count: num(paper.referenceCount),
|
|
110
|
+
pdf_url: str(paper.openAccessPdf?.url) || undefined,
|
|
111
|
+
source_adapter: source,
|
|
112
|
+
source_url: str(paper.url) || `https://www.semanticscholar.org/paper/${id}`,
|
|
113
|
+
retrieved_at: new Date().toISOString(),
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
function rows(papers, source = "semantic-scholar") {
|
|
117
|
+
const list = Array.isArray(papers) ? papers : [];
|
|
118
|
+
return list.map((paper) => mapSemanticScholarPaper(paper, source));
|
|
119
|
+
}
|
|
120
|
+
cli({
|
|
121
|
+
site: "semantic-scholar",
|
|
122
|
+
name: "search",
|
|
123
|
+
description: "Search Semantic Scholar papers",
|
|
124
|
+
domain: "api.semanticscholar.org",
|
|
125
|
+
strategy: Strategy.PUBLIC,
|
|
126
|
+
args: [
|
|
127
|
+
{ name: "query", type: "str", required: true, positional: true },
|
|
128
|
+
{ name: "limit", type: "int", default: 20 },
|
|
129
|
+
],
|
|
130
|
+
columns: [
|
|
131
|
+
"id",
|
|
132
|
+
"title",
|
|
133
|
+
"authors",
|
|
134
|
+
"year",
|
|
135
|
+
"venue",
|
|
136
|
+
"doi",
|
|
137
|
+
"pdf_url",
|
|
138
|
+
"source_url",
|
|
139
|
+
],
|
|
140
|
+
capabilities: ["http.fetch", "scholar.search"],
|
|
141
|
+
func: async (_page, kwargs) => {
|
|
142
|
+
const query = String(kwargs.query ?? "").trim();
|
|
143
|
+
if (!query)
|
|
144
|
+
throw new Error("semantic-scholar search query cannot be empty.");
|
|
145
|
+
const limit = Math.min(Math.max(Number(kwargs.limit ?? 20), 1), 100);
|
|
146
|
+
const body = (await fetchS2(`/paper/search?query=${encodeURIComponent(query)}&limit=${limit}&fields=${encodeURIComponent(FIELDS)}`, "semantic-scholar search"));
|
|
147
|
+
const out = rows(body.data);
|
|
148
|
+
if (out.length === 0)
|
|
149
|
+
throw new Error(`No Semantic Scholar papers matched "${query}".`);
|
|
150
|
+
return out;
|
|
151
|
+
},
|
|
152
|
+
});
|
|
153
|
+
cli({
|
|
154
|
+
site: "semantic-scholar",
|
|
155
|
+
name: "paper",
|
|
156
|
+
description: "Fetch one Semantic Scholar paper by paperId, DOI, or arXiv id",
|
|
157
|
+
domain: "api.semanticscholar.org",
|
|
158
|
+
strategy: Strategy.PUBLIC,
|
|
159
|
+
args: [{ name: "id", type: "str", required: true, positional: true }],
|
|
160
|
+
columns: [
|
|
161
|
+
"id",
|
|
162
|
+
"title",
|
|
163
|
+
"authors",
|
|
164
|
+
"year",
|
|
165
|
+
"venue",
|
|
166
|
+
"doi",
|
|
167
|
+
"pdf_url",
|
|
168
|
+
"source_url",
|
|
169
|
+
],
|
|
170
|
+
capabilities: ["http.fetch", "scholar.get", "scholar.pdf"],
|
|
171
|
+
func: async (_page, kwargs) => {
|
|
172
|
+
const ref = requireSemanticScholarPaperRef(kwargs.id ?? kwargs.ref ?? kwargs.doi ?? kwargs.arxiv_id);
|
|
173
|
+
const paper = (await fetchS2(`/paper/${encodeURIComponent(ref)}?fields=${encodeURIComponent(FIELDS)}`, `semantic-scholar paper ${ref}`));
|
|
174
|
+
return [mapSemanticScholarPaper(paper, "semantic-scholar")];
|
|
175
|
+
},
|
|
176
|
+
});
|
|
177
|
+
for (const [name, path, cap] of [
|
|
178
|
+
["citations", "citations", "scholar.citations"],
|
|
179
|
+
["references", "references", "scholar.references"],
|
|
180
|
+
]) {
|
|
181
|
+
cli({
|
|
182
|
+
site: "semantic-scholar",
|
|
183
|
+
name,
|
|
184
|
+
description: `List Semantic Scholar paper ${name}`,
|
|
185
|
+
domain: "api.semanticscholar.org",
|
|
186
|
+
strategy: Strategy.PUBLIC,
|
|
187
|
+
args: [
|
|
188
|
+
{ name: "id", type: "str", required: true, positional: true },
|
|
189
|
+
{ name: "limit", type: "int", default: 20 },
|
|
190
|
+
],
|
|
191
|
+
columns: [
|
|
192
|
+
"id",
|
|
193
|
+
"title",
|
|
194
|
+
"authors",
|
|
195
|
+
"year",
|
|
196
|
+
"venue",
|
|
197
|
+
"doi",
|
|
198
|
+
"pdf_url",
|
|
199
|
+
"source_url",
|
|
200
|
+
],
|
|
201
|
+
capabilities: ["http.fetch", cap],
|
|
202
|
+
func: async (_page, kwargs) => {
|
|
203
|
+
const ref = requireSemanticScholarPaperRef(kwargs.id ?? kwargs.ref);
|
|
204
|
+
const limit = Math.min(Math.max(Number(kwargs.limit ?? 20), 1), 100);
|
|
205
|
+
const body = (await fetchS2(`/paper/${encodeURIComponent(ref)}/${path}?limit=${limit}&fields=${encodeURIComponent(FIELDS)}`, `semantic-scholar ${name} ${ref}`));
|
|
206
|
+
const papers = (body.data ?? []).map((item) => name === "citations" ? item.citingPaper : item.citedPaper);
|
|
207
|
+
const out = rows(papers);
|
|
208
|
+
if (out.length === 0)
|
|
209
|
+
throw new Error(`No Semantic Scholar ${name} found for ${ref}.`);
|
|
210
|
+
return out;
|
|
211
|
+
},
|
|
212
|
+
});
|
|
213
|
+
}
|
|
214
|
+
//# sourceMappingURL=papers.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"papers.js","sourceRoot":"","sources":["../../../src/adapters/semantic-scholar/papers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @owner src::adapters::unpaywall::works
|
|
3
|
+
* @does Registers Unpaywall DOI open-access lookup for PDF availability.
|
|
4
|
+
* @needs api.unpaywall.org v2, UNPAYWALL_EMAIL or --email, src/registry.ts
|
|
5
|
+
* @feeds src/commands/scholar.ts via scholar.pdf and scholar.get
|
|
6
|
+
* @breaks Missing email is an explicit invalid-input error; Unpaywall drift surfaces as adapter error, never as a fabricated PDF.
|
|
7
|
+
* @invariants Only DOI-shaped references are accepted; best_oa_location is preferred for PDF and landing URLs.
|
|
8
|
+
* @side-effects HTTPS egress to api.unpaywall.org only
|
|
9
|
+
* @perf O(1) per DOI
|
|
10
|
+
* @concurrency safe
|
|
11
|
+
* @test tests/unit/adapters/scholar-sources.test.ts
|
|
12
|
+
* @stability experimental
|
|
13
|
+
* @since 2026-05-19
|
|
14
|
+
*/
|
|
15
|
+
import type { ScholarlyWorkRecord } from "../../types/scholarly.js";
|
|
16
|
+
interface OaLocation {
|
|
17
|
+
url_for_pdf?: unknown;
|
|
18
|
+
url_for_landing_page?: unknown;
|
|
19
|
+
host_type?: unknown;
|
|
20
|
+
version?: unknown;
|
|
21
|
+
license?: unknown;
|
|
22
|
+
}
|
|
23
|
+
interface UnpaywallWork {
|
|
24
|
+
doi?: unknown;
|
|
25
|
+
title?: unknown;
|
|
26
|
+
is_oa?: unknown;
|
|
27
|
+
oa_status?: unknown;
|
|
28
|
+
best_oa_location?: OaLocation | null;
|
|
29
|
+
}
|
|
30
|
+
export declare function requireUnpaywallDoi(value: unknown): string;
|
|
31
|
+
export declare function mapUnpaywallWork(work: UnpaywallWork, source: string): ScholarlyWorkRecord;
|
|
32
|
+
export {};
|
|
33
|
+
//# sourceMappingURL=works.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"works.d.ts","sourceRoot":"","sources":["../../../src/adapters/unpaywall/works.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAIpE,UAAU,UAAU;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,UAAU,aAAa;IACrB,GAAG,CAAC,EAAE,OAAO,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;CACtC;AAYD,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQ1D;AAUD,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,aAAa,EACnB,MAAM,EAAE,MAAM,GACb,mBAAmB,CAmBrB"}
|