Research Assistant
2d5f604ae8
feat: v1.4.11 — Obsidian plugin UX overhaul + headless_setup parity
...
- Plugin: multi-step install wizard modal (5 steps) with editable directory/key inputs
- Plugin: settings tab becomes operation guide; all config moved to wizard
- Plugin: Python/Zotero/BBT pre-check before wizard opens
- Plugin: agent platform selector (OpenCode/Claude/Cursor/Copilot etc.)
- Plugin: responsive dashboard (auto-fit grids, clamp typography)
- Plugin: command output styled in-panel (running/ok/error)
- Plugin: BBT export guidance in settings tab
- Plugin: rename defaults (Resources, Notes, Index_Cards, System, Base)
- Plugin: vault_path auto-detect from Obsidian
- Plugin: auto-update paperforge on plugin load
- CLI: headless_setup now creates Zotero junction (mklink /J)
- CLI: headless_setup deploys skill directory for flat_command agents
- sync: wikilink through junction (no .resolve() — keeps vault-relative paths)
- sync: route absolute paths through Zotero junction for vault-relative wikilinks
- config: remove library-records subdirectory (records now directly under control_dir)
- base_views: fix duplicate views on merge (skip legacy unmarked views)
- base_views: auto-update folder filter when path config changes
- Phases 20-22 planned and documented
- Bump to v1.4.11
2026-04-30 11:14:07 +08:00
Research Assistant
c5cb9c1bfd
feat(21-01): add subprocess orchestration and Chinese notice helpers
...
- _runSetup(): validates fields, spawns paperforge setup --headless, disables/enables button
- Uses spawn (not exec) for stdout streaming, --headless (not --non-interactive)
- Explicit directory args override headless_setup defaults
- _showNotice(): renders success/error/progress via Obsidian Notice API
- _formatSetupError(): maps 5+ error patterns to Chinese, raw errors logged to console
- _processSetupOutput(): parses [*]/[OK]/[FAIL] step markers from stdout
- _setStatus(): updates status area with color-coded CSS class
- Button disable/enable in try/finally prevents double-click
- INST-04: sidebar and commands unchanged
2026-04-29 22:38:22 +08:00
Research Assistant
2820bc99e5
feat(21-01): add install status CSS styles (SECTION 5)
...
- .paperforge-install-status base style with margin/padding/border-radius
- .paperforge-install-success (green) with color-mix tinted background
- .paperforge-install-error (red) with color-mix tinted background
- .paperforge-install-progress (blue) with color-mix tinted background
- Uses Obsidian CSS variables for theme compatibility
2026-04-29 22:36:24 +08:00
Research Assistant
019ffb6e53
feat(21-01): add _validate() field validation method
...
- Check 7 required fields for non-empty values
- All error messages in Chinese per INST-03
- zotero_data_dir excluded (optional field, auto-detected)
- Returns empty array when valid, error strings array when invalid
2026-04-29 22:36:05 +08:00
Research Assistant
80e9912f67
feat(21-01): add install button section and status area to settings tab
...
- Append '\u5b89\u88c5\u914d\u7f6e' section with status div + CTA button
- Create _statusArea with initial status message
- Button onClick wired to _runSetup (forward declaration for Plan 02)
- No existing code modified (sidebar, actions, other sections preserved)
2026-04-29 22:35:46 +08:00
Research Assistant
fdc457455c
feat(20-20): add settings data model with DEFAULT_SETTINGS and PaperForgeSettingTab UI
...
- DEFAULT_SETTINGS: vault_path, system_dir, resources_dir, literature_dir, control_dir, agent_config_dir, paddleocr_api_key, zotero_data_dir
- Plugin.loadSettings() merges DEFAULT_SETTINGS with saved data via Object.assign
- Plugin.saveSettings() persists via Obsidian Plugin.saveData() API
- PaperForgeSettingTab with 3 sections: 基础路径 (6 fields), API 密钥 (1 password), Zotero 链接 (1 field)
- Debounced 500ms save on field change via setTimeout/clearTimeout pattern
- 8 settings text inputs: 7 regular + 1 password field for paddleocr_api_key
- Settings survive tab switch (in-memory state) and Obsidian restart (data.json persistence)
2026-04-29 22:20:07 +08:00
Research Assistant
2329e82588
fix: include styles.css in package data; prevent Unicode crash on pip output
2026-04-29 01:06:59 +08:00
Research Assistant
6df746d20c
fix: sync Obsidian plugin even when update is already current
2026-04-29 00:57:30 +08:00
Research Assistant
8d490a3ebc
fix: read remote version from GitHub API content to avoid raw CDN cache
2026-04-29 00:29:45 +08:00
Research Assistant
8a3b6b4f7e
chore: bump to v1.4.8 and unify update version checks on __init__.py
2026-04-29 00:26:16 +08:00
Research Assistant
6b567d004f
fix: update pip installs from GitHub source instead of package index
2026-04-29 00:16:13 +08:00
Research Assistant
6394043441
fix: move install_obsidian_plugin to _utils.py, reload after update to always use latest code
2026-04-29 00:09:52 +08:00
Research Assistant
0d2c16172f
fix: correct UPDATEABLE_PATHS repo paths; plugin install uses vault-first source; exclude table images from figure-map matching
2026-04-28 23:58:02 +08:00
Research Assistant
2eaeb30efa
chore: bump to v1.4.5
2026-04-28 23:43:47 +08:00
Research Assistant
3aee514fd5
refactor: extract pipeline_paths into _utils.py — remove 7 copies, 3 of which were dead code
2026-04-28 23:42:00 +08:00
Research Assistant
61b72a467d
refactor: extract load_domain_config into single _domain.py module — remove 7 copies, full rebuild on every call
2026-04-28 23:31:31 +08:00
Research Assistant
049f63ffec
feat: overhaul Obsidian plugin UI — dashboard layout, segmented OCR bar, action cards
2026-04-28 23:14:52 +08:00
Research Assistant
a9ba944ddc
refactor: __init__.py as single version source; pyproject.toml reads dynamically; paperforge.json drops version field
2026-04-28 22:41:48 +08:00
Research Assistant
0dc27b7c2c
chore: bump to v1.4.4 to unify all fixes under a single version
2026-04-28 22:34:41 +08:00
Research Assistant
0bbcb41346
fix: reload paperforge module before installing plugin to get updated path
2026-04-28 22:31:13 +08:00
Research Assistant
1ec09b6baa
fix: surface remote version check errors instead of silently swallowing
2026-04-28 22:23:28 +08:00
Research Assistant
998dc3489a
feat: paperforge update now auto-installs Obsidian plugin
2026-04-28 22:18:42 +08:00
Research Assistant
8dbf188168
fix: sync __version__ to 1.4.3, _remote_version() reads from __init__.py
2026-04-28 22:13:23 +08:00
Research Assistant
40ee97c0f8
chore: bump to v1.4.3, update READMEs with multi-agent and plugin info
2026-04-28 19:43:58 +08:00
Research Assistant
f617054d5a
feat: paperforge status --json, plugin panel with OCR progress bar
2026-04-28 19:21:52 +08:00
Research Assistant
11ebc85c4e
feat: Obsidian plugin status panel — metric cards, progress bars, quick actions
2026-04-28 19:11:58 +08:00
Research Assistant
248a0b6446
fix: restructure skills — separate pf-deep/pf-paper, add prefix substitution, create config_file on deploy
2026-04-28 18:33:11 +08:00
Research Assistant
94ddf1f6a0
fix: apply missing deploy helper functions, SKILL.md source files, and format dispatch
2026-04-28 17:15:37 +08:00
Research Assistant
22e2fc547f
fix: ensure parent dirs exist before copying skill files
2026-04-28 16:27:45 +08:00
Research Assistant
aac31c4a76
test: add AGENT_CONFIGS format/prefix field tests, update expected agents
2026-04-28 16:13:58 +08:00
Research Assistant
22c82dae24
fix: remove hardcoded literature-qa subdirs from Phase 2 directory creation
2026-04-28 16:11:59 +08:00
Research Assistant
c43c0c76a2
refactor: extend AGENT_CONFIGS with format and prefix fields, add codex
2026-04-28 16:03:11 +08:00
Research Assistant
859fa5ff97
feat: headless setup mode, Obsidian plugin, AI agent install guide (v1.4.2)
2026-04-28 14:33:35 +08:00
Research Assistant
ebc4fdeb00
chore: rename PaperForge Lite -> PaperForge across 27 files
2026-04-28 01:25:51 +08:00
Research Assistant
ec1587febc
fix: add exit button to setup wizard, fix Python version (3.8->3.10), remove outdated migration text
2026-04-28 01:24:28 +08:00
Research Assistant
45f47a51b9
chore: bump version to 1.4.1
2026-04-28 00:49:00 +08:00
Research Assistant
97d090a5e3
refactor: rewrite prompt_deep_subagent.md to directive command style
2026-04-28 00:25:54 +08:00
Research Assistant
61df09c77f
feat: add postprocess-pass2 molecule for validating Pass 2 output
2026-04-28 00:24:31 +08:00
Research Assistant
cc1f696ded
feat: add fixed sub-headings to figure/table callout blocks in skeleton
2026-04-28 00:15:48 +08:00
Research Assistant
d82fc52521
feat: persistent OCR poll until completion; fix OpenCode commands for pip install; fix test hangs; add command_files to package
2026-04-27 22:52:03 +08:00
Research Assistant
0505fd2fda
feat: add paperforge setup CLI command, one-click install script, sync __version__ to 1.4.0, detect local version from pip metadata
2026-04-27 21:34:03 +08:00
Research Assistant
94f00e990a
fix: sync paperforge.json version to 1.4.0; fix update.py missing GITHUB_REPO/GITHUB_ZIP imports; remove PaperForge.base generation (duplicates Literature Hub)
2026-04-27 21:25:00 +08:00
Research Assistant
f31efec521
chore: remove PaperForge.base generation (duplicates Literature Hub)
2026-04-27 21:20:14 +08:00
Research Assistant
2bfbec691e
fix: add zotero_dir to paperforge_paths() for PDF resolution; fix L3 diagnostic to skip schema check without file upload
2026-04-27 21:12:29 +08:00
Research Assistant
ee260e05f5
fix: L2 diagnostic accepts 400 as reachable (PaddleOCR rejects bare POST without fileUrl)
2026-04-27 20:41:49 +08:00
Research Assistant
13b3e142cc
fix: OCR diagnostic L2 probe uses POST instead of GET (PaddleOCR rejects GET)
2026-04-27 20:34:47 +08:00
Research Assistant
a3270dc791
fix: add creators/extra to load_export_rows row dict, fix journal key lookup for first_author/journal/IF in library-records; add first_author, journal, impact_factor columns to Base views; fix PDF storage/ subdirectory resolution
2026-04-27 20:25:35 +08:00
Research Assistant
67a52a898a
fix: VaultStep.__init__ missing step_id and checker in super() call
2026-04-27 19:49:36 +08:00
Research Assistant
2edb5b65cc
docs(v1.4): commit planning artifacts, test files, and phase summaries for phases 13-19
2026-04-27 19:12:03 +08:00
Research Assistant
40868620dc
docs(18-documentation-ux-polish): create chart-reading INDEX.md and update ROADMAP.md
...
- Create chart-reading/INDEX.md listing all 19 guides ordered by biomedical commonness
- Update ROADMAP.md Phase 18 details with 2 plans (1 wave)
- Mark 18-01 as complete, update progress table to 2/1
2026-04-27 18:06:08 +08:00