qiongli 1.9.2 → 1.10.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/README.md +8 -5
- package/lib/args.mjs +1 -1
- package/lib/cli.mjs +9 -2
- package/package.json +1 -1
- package/payload/qiongli-workflow/SKILL.md +2 -2
- package/payload/qiongli-workflow/VERSION +1 -1
- package/payload/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/accounting/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/accounting/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/accounting/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/accounting/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/accounting/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/accounting/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/business/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/business/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/business/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/business/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/business/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/business/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/core/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/core/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/core/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/core/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/core/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/core/focused/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/economics/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/economics/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/economics/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/economics/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/economics/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/economics/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/economics-accounting/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/economics-accounting/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/economics-accounting/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/economics-accounting/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/economics-accounting/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/economics-accounting/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/finance/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/finance/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/finance/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/finance/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/finance/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/finance/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/geoeconomics/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/geoeconomics/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/geoeconomics/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/geoeconomics/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/geoeconomics/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/geoeconomics/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/payload/subjects/political-economy/complete/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/political-economy/complete/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/political-economy/complete/qiongli-workflow/skills/registry.yaml +73 -73
- package/payload/subjects/political-economy/focused/qiongli-workflow/SKILL.md +2 -2
- package/payload/subjects/political-economy/focused/qiongli-workflow/VERSION +1 -1
- package/payload/subjects/political-economy/focused/qiongli-workflow/skills/registry.yaml +37 -37
- package/python-runtime/qiongli/__init__.py +1 -1
- package/python-runtime/qiongli/bridges/mcp_config_wizard.py +230 -11
- package/python-runtime/qiongli/cli.py +86 -15
- package/python-runtime/qiongli/install_discovery.py +22 -14
- package/python-runtime/qiongli/self_update.py +240 -0
- package/python-runtime/qiongli/setup_wizard.py +83 -10
- package/python-runtime/qiongli/universal_installer.py +20 -1
- package/python-runtime/skills/registry.yaml +73 -73
package/README.md
CHANGED
|
@@ -24,10 +24,12 @@ Use explicit `qiongli install ...` commands when you only need Node-based asset
|
|
|
24
24
|
Update an existing global install with:
|
|
25
25
|
|
|
26
26
|
```bash
|
|
27
|
-
|
|
28
|
-
qiongli
|
|
27
|
+
qiongli self-update --dry-run
|
|
28
|
+
qiongli self-update --yes
|
|
29
29
|
```
|
|
30
30
|
|
|
31
|
+
`qiongli self-update` delegates to `npm install -g qiongli@latest`, then refreshes the full local plugin/MCP surface with `qiongli install --target all --surface plugin --profile full --overwrite`. Use `--channel next` for the prerelease dist-tag. Marketplace plugins remain managed by the client plugin manager.
|
|
32
|
+
|
|
31
33
|
Or run without a global install:
|
|
32
34
|
|
|
33
35
|
```bash
|
|
@@ -53,13 +55,14 @@ qiongli uninstall --target codex
|
|
|
53
55
|
|
|
54
56
|
The npm package contains pre-materialized `core`, `economics`, `accounting`, `business`, `finance`, `political-economy`, `geoeconomics`, and `economics-accounting` `qiongli-workflow` subject payloads in both `complete` and `focused` coverage. It does not depend on PyPI for skill installation and does not run `postinstall`.
|
|
55
57
|
|
|
56
|
-
`qiongli setup` is the interactive guided path for choosing install or upgrade, runtime surface, subject, coverage, `--mode copy|link`, install scope, CLI directory, `--overwrite` / `--no-overwrite`, optional upgrade source, literature provider
|
|
58
|
+
`qiongli setup` is the interactive guided path for choosing install or upgrade, runtime surface, subject, coverage, `--mode copy|link`, install scope, CLI directory, `--overwrite` / `--no-overwrite`, optional upgrade source, literature provider setup, and doctor verification. Provider setup defaults to one local browser page with key-access guidance for OpenAlex, Semantic Scholar, Crossref, PubMed, and arXiv; use `--provider-mode prompt` for terminal-only entry or `--provider-mode skip` to bypass it. Each prompt includes a short `Tip:` comment. It delegates to the bundled Python bridge, so it requires Python 3.12+ with `PyYAML`. If you only need Node-based asset installation, use explicit `qiongli install ...` commands.
|
|
57
59
|
|
|
58
60
|
## Global-first update model
|
|
59
61
|
|
|
60
62
|
The npm package and the installed workflow assets are separate surfaces:
|
|
61
63
|
|
|
62
64
|
- `npm install -g qiongli@latest` updates the npm CLI and bundled payload in npm's global package location.
|
|
65
|
+
- `qiongli self-update --yes` performs that npm package update and then refreshes installed full local plugin/MCP surfaces from the new bundled payload.
|
|
63
66
|
- `qiongli install --target all` installs the default `core/complete` package into global AI client skill directories.
|
|
64
67
|
- `qiongli install --subject economics --target all` installs the full framework plus economics specialization.
|
|
65
68
|
- `qiongli install --subject accounting --target all` installs the full framework plus accounting specialization.
|
|
@@ -69,7 +72,7 @@ The npm package and the installed workflow assets are separate surfaces:
|
|
|
69
72
|
- `qiongli install --subject geoeconomics --target all` installs the full framework plus geoeconomics specialization.
|
|
70
73
|
- `qiongli install --subject economics --coverage focused --target all` installs the slimmer economics-focused package.
|
|
71
74
|
- `qiongli install --subject economics-accounting --target all` installs the official economics/accounting composite.
|
|
72
|
-
- `qiongli upgrade --subject accounting --target all` is the
|
|
75
|
+
- `qiongli upgrade --subject accounting --target all` is the release-archive refresh path with overwrite enabled. Use it when you intentionally want to download an upstream GitHub release rather than updating the npm package first.
|
|
73
76
|
- `qiongli remove --target all` removes CLI-installed global workflow assets and generated discovery links while preserving marketplace plugins and unmanaged user files.
|
|
74
77
|
- Project directories are not required for normal install or upgrade. Use project paths only for commands that inspect or clean a specific project, such as `qiongli doctor --cwd .` or `qiongli clean --project-dir .`.
|
|
75
78
|
|
|
@@ -122,7 +125,7 @@ Use `stdio` when the desktop client can launch a local command. Use HTTP only fo
|
|
|
122
125
|
qiongli mcp serve --transport http --host 127.0.0.1 --port 8765
|
|
123
126
|
```
|
|
124
127
|
|
|
125
|
-
Provider keys can be configured with `qiongli mcp configure ...`, `qiongli provider setup`, or the MCP tool `qiongli_configure_provider`. Status and tool output are redacted; raw key values are not printed.
|
|
128
|
+
Provider keys can be configured with `qiongli mcp configure ...`, `qiongli provider setup`, or the MCP tool `qiongli_configure_provider`. The setup page includes links and short steps for getting each supported key, and marks arXiv as available without an API key. Status and tool output are redacted; raw key values are not printed.
|
|
126
129
|
|
|
127
130
|
Runtime `--custom-dir` customization is not supported by npm in this phase. Use the source checkout when you need local custom overlays, profiles, or skills:
|
|
128
131
|
|
package/lib/args.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const TARGETS = new Set(['codex', 'claude', 'antigravity', 'hermes', 'all']);
|
|
2
2
|
const MODES = new Set(['copy', 'link']);
|
|
3
3
|
const BRIDGE_COMMANDS = new Set(['doctor', 'guidance', 'task-run', 'team-run', 'parallel', 'chain', 'role', 'single', 'code-build', 'task-plan']);
|
|
4
|
-
const PYTHON_CLI_COMMANDS = new Set(['setup', 'mcp']);
|
|
4
|
+
const PYTHON_CLI_COMMANDS = new Set(['setup', 'mcp', 'self-update', 'update']);
|
|
5
5
|
|
|
6
6
|
export function parseArgv(argv) {
|
|
7
7
|
const [rawCommand = 'help', ...restArgs] = argv;
|
package/lib/cli.mjs
CHANGED
|
@@ -8,11 +8,13 @@ import {
|
|
|
8
8
|
} from './python-runtime.mjs';
|
|
9
9
|
|
|
10
10
|
const BRIDGE_COMMANDS = new Set(['doctor', 'guidance', 'task-run', 'team-run', 'parallel', 'chain', 'role', 'single', 'code-build', 'task-plan']);
|
|
11
|
-
const PYTHON_CLI_COMMANDS = new Set(['setup', 'mcp']);
|
|
11
|
+
const PYTHON_CLI_COMMANDS = new Set(['setup', 'mcp', 'self-update', 'update']);
|
|
12
|
+
const SELF_UPDATE_COMMANDS = new Set(['self-update', 'update']);
|
|
12
13
|
|
|
13
14
|
export async function main(argv, {
|
|
14
15
|
stdout = process.stdout,
|
|
15
16
|
stderr = process.stderr,
|
|
17
|
+
env = process.env,
|
|
16
18
|
runBridgeCommand = defaultRunBridgeCommand,
|
|
17
19
|
runPythonCliCommand = defaultRunPythonCliCommand,
|
|
18
20
|
} = {}) {
|
|
@@ -115,7 +117,10 @@ export async function main(argv, {
|
|
|
115
117
|
}
|
|
116
118
|
|
|
117
119
|
if (PYTHON_CLI_COMMANDS.has(parsed.command)) {
|
|
118
|
-
|
|
120
|
+
const childEnv = SELF_UPDATE_COMMANDS.has(parsed.command)
|
|
121
|
+
? { ...env, QIONGLI_INSTALL_CHANNEL: 'npm' }
|
|
122
|
+
: env;
|
|
123
|
+
return runPythonCliCommand({ packageRoot: root, args: [parsed.command, ...parsed.rest], env: childEnv });
|
|
119
124
|
}
|
|
120
125
|
|
|
121
126
|
if (BRIDGE_COMMANDS.has(parsed.command)) {
|
|
@@ -162,6 +167,8 @@ Usage:
|
|
|
162
167
|
qiongli check [--json]
|
|
163
168
|
qiongli clean --project-dir . [--globals]
|
|
164
169
|
qiongli runtime doctor
|
|
170
|
+
qiongli self-update [--channel stable|next] [--yes]
|
|
171
|
+
qiongli update [--dry-run]
|
|
165
172
|
qiongli setup [--dry-run] [--project-dir .] [--no-doctor]
|
|
166
173
|
qiongli mcp serve --transport stdio
|
|
167
174
|
qiongli mcp doctor --json
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: qiongli
|
|
3
|
-
description: "Qiongli version: v1.
|
|
3
|
+
description: "Qiongli version: v1.10.0. Cross-platform academic research workflow for Codex, Claude / Claude Code, and CLI. Use for academic research lifecycle work: paper planning, literature review, paper reading, gap finding, study design, manuscript writing, statistics, analysis code, reproducibility, proofread, rebuttal, submission, presentation, and stage-aware grill / critique. Route natural academic requests even when the user does not explicitly invoke $qiongli or a slash command."
|
|
4
4
|
---
|
|
5
5
|
|
|
6
6
|
# Qiongli Academic Workflow
|
|
@@ -9,7 +9,7 @@ Run a model-agnostic paper workflow using shared Task IDs and artifact contracts
|
|
|
9
9
|
|
|
10
10
|
This is a **self-contained skill package**. All assets needed for execution — workflows, skill specifications, output templates, standards, and agent roles — are bundled in subdirectories of this package. No external repo access is needed.
|
|
11
11
|
|
|
12
|
-
Installed Qiongli workflow version: `v1.
|
|
12
|
+
Installed Qiongli workflow version: `v1.10.0`
|
|
13
13
|
|
|
14
14
|
## Quick Start
|
|
15
15
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
v1.
|
|
1
|
+
v1.10.0
|