history / commits.log

pi-desktop-plugins

commits 100
years 01
latest 09-12 17:25
timeline / commits.log 100 entries
范围 2026 -> 2026
跳转 GitHub links enabled

2026

100 commits
  1. 09-12 17:25 sha: d7d92eb
    open

    Merge pull request #38 from vastsa/fix/catalog-preserve-publish-times

    fix(catalog): preserve release timestamps on rebuild

  2. 09-12 17:25 sha: 7984fc2
    open

    fix(catalog): preserve release timestamps on rebuild

  3. 09-12 17:15 sha: 843120c
    open

    Merge pull request #37 from vastsa/fix/deps-audit-security-hardening

    fix(deps-audit): harden untrusted URLs and staging boundaries

  4. 09-12 17:14 sha: 906882a
    open

    docs(deps-audit): remove unrelated README content

  5. 09-12 17:08 sha: 23e3642
    open

    fix(deps-audit): round-2 security hardening (href scheme, staging containment, docs)

    Review round 2 blockers: - audit.html: reference URLs from scanner output are scheme-validated — only http/https render as links, anything else degrades to plain text (escapeAttr alone cannot stop javascript:/data:). - pickManifests: 'wanted' names are strictly allowlisted against the known manifest set and canonicalized against the workspace root, so traversal attempts ('../../outside.txt') are rejected at the plugin boundary regardless of host gateway behavior. The staging write gets the same canonical containment check. Negative tests added. - README: permission table now matches manifest.json exactly (fs.read root-manifest scope + clipboard.write; agent.complete/models.list not declared), the troubleshooting command uses the v2 CLI, and the design section documents the staged-copy containment model. Branch also merges current main (catalog.json conflict resolved by regenerating through rebuild_catalog.py). Re-packed 0.2.0: sha256 f6aac93e..., 82,678 bytes. security_audit --check-packages: 0 blockers. Repo suite: 331/331. (cherry picked from commit a4013d1c2a1c500fe5c083e83f848eeed170a15c)

  6. 09-12 17:09 sha: 450a6b9
    open

    Merge pull request #36 from vastsa/maintainer/merge-pr-35

    chore: integrate deps-audit contribution from PR #35

  7. 09-12 17:06 sha: 1f4de88
    open

    chore(deps-audit): sync PR branch with main

  8. 09-12 16:53 sha: d18bf98
    open

    fix(deps-audit): rework per maintainer review (lifecycle, scoping, permissions)

    Address all seven findings from the #20 review, plus the testing gaps it called out: - Lifecycle (F1): the host builds the API as globalThis.pi and calls onLoad() with no argument, so the previous onLoad(pi) signature never registered anything. Commands, the agent tool, and onUnload now go through the global, with lifecycle regression tests. - Scanner CLI (F2): osv-scanner v2 invocation corrected to 'scan source --format json --recursive <dir>' (was the invalid per-manifest 'scan source -L <file>'), pinned by buildScanArgs and asserted end to end with an argv-recording stub binary. Verified against the real 2.5.1 binary on a seeded lodash 4.17.15 lockfile. - Workspace scoping (F3): panel scans resolve the active project via pi.workspace.get() and settings via pi.plugin.getSettings(); the process.cwd() fallback is gone (no open project = invalid_workspace_root with an actionable message). - Permission containment (F4): manifests are read through the host fs gateway under a declared root-manifest fs.read scope, staged as sanitized copies in a throwaway temp directory, and osv-scanner runs against that directory only - the spawned binary never touches the workspace, and the plugin process makes no network calls of its own (osv-scanner contacts OSV itself). deps_audit_run is declared high risk per the SECURITY.md tier for native execution + network. Negative paths (missing/corrupt binary, timeout, non-zero exit, parse error, missing gateway) are test-covered. - Clipboard (F5): the panel copies through the host clipboard.write bridge instead of navigator.clipboard. - Windows (F6): PATH lookup uses where.exe on Windows and which elsewhere, and every PATH hit is exec-probed so a corrupt download earlier on the PATH fails cleanly instead of crashing the spawn. - Panel chrome (F7): the v3 chrome contract assertions pass and the panel-chrome test count is updated for the added plugin. Real-binary verification: 2.5.1 on a seeded lodash 4.17.15 lockfile finds the advisory through the staged copies. Repo suite: 325/325.

  9. 09-12 16:51 sha: 8fd5a83
    open

    Merge pull request #34: fix(pi.ssh-manager): close askpass unload race

    Merge follow-up SSH lifecycle fix and publish pi.ssh-manager 0.1.4.

  10. 09-12 16:50 sha: 4ca82c0
    open

    fix(pi.ssh-manager): close askpass unload race

  11. 09-12 16:46 sha: d8cba51
    open

    Merge pull request #33: fix(pi.ssh-manager): preserve SSH connection diagnostics

    Merge reviewed SSH Manager 0.1.3 release. Source/package review and tests passed; Vercel status is an external authorization failure.

  12. 09-12 16:42 sha: 36c3d8f
    open

    chore(pi.ssh-manager): sync release branch with main

  13. 09-12 16:27 sha: 5a48cf9
    open

    Merge pull request #29 from muzimu217/feat/session-import-0.4.8

    Reviewed source and packed artifact; merged after conflict resolution against current main. Local security audit and full test suite passed; CI test passed on the merge-ready head.

  14. 09-12 16:25 sha: 10060a3
    open

    chore(session-import): resolve catalog after main merge

  15. 09-12 16:23 sha: 2b6d19b
    open

    Merge pull request #31 from pkmcenter/feat/pi.parchment-1.0.4

    Reviewed source and packed artifact; targeted and full repository tests passed. Vercel status is an external team-authorization failure.

  16. 09-12 14:51 sha: ee54325
    open

    fix(pi.ssh-manager): close config and broker lifecycle gaps

  17. 09-12 14:15 sha: a010660
    open

    fix(pi.ssh-manager): isolate transient askpass credentials

  18. 09-12 13:41 sha: af942c0
    open

    fix(pi.ssh-manager): preserve SSH connection diagnostics

  19. 09-12 09:15 sha: 92b2c6d
    open

    chore(pi.parchment): repack 1.0.4 with normalized LF line endings and .gitattributes

    Repacked pi.parchment-1.0.4.piplug per repo .gitattributes (manifest.json and themes/*.css are eol=lf). CSS content is byte-identical to the previous package; catalog.json shasum/size sync: 11397e2f..., 351052 bytes.

  20. 09-12 08:17 sha: 69d363b
    open

    feat(pi.parchment): release 1.0.4 — fix invisible filenames, links and inline code in dark user bubbles

  21. 09-12 04:46 sha: 568aeb5
    open

    feat(io.github.muzimu217.session-import): publish 0.4.8 (default project binding)

    Import behaviour fix on top of 0.4.7 — the plugin now always groups imported sessions under their source project: - Drop the "group to project" checkbox. It was a no-op: the host's import_session calls ensure_project(path) whenever project_path is non-empty and ignores projectId, so unchecking it never produced a standalone import. Placement now defaults to "project"; sessions with no projectPath fall back to the standalone SESSIONS list (NULL project_id index), so no data is lost. - Remove the post-import "session forge" native notification (unclear copy) and drop the now-unused `notify` permission. The forge feature itself is kept. - Simplify the import-done copy to a single line. Keeps 0.4.7 (declarative drivers + custom sources and its security hardening: filesystem-root/Windows-drive rejection, extension suffix validation, SQLite identifier charset limits, convert() confined to the spec root) and the 0.4.6 robustness work unchanged. Package is packed from the in-repo source so security_audit --check-packages matches byte for byte; catalog gains a 0.4.8 entry alongside 0.4.7.

  22. 09-11 18:49 sha: b600109
    open

    fix(io.github.muzimu217.session-import): harden 0.4.7 custom sources

    Reject Windows drive roots and empty extensions, charset-limit SQLite identifiers, keep convert() inside the spec root, load plugin tests from the in-repo path, and align the contract test with 0.4.7.

  23. 09-11 18:39 sha: c2397b6
    open

    Merge pull request #27 from muzimu217/feat/session-import-0.4.7

    Publish io.github.muzimu217.session-import 0.4.7 (declarative source drivers + user-defined sources). Catalog regenerated after conflict with the 0.4.4 CI-gate rebuild.

  24. 09-11 18:28 sha: a7f3a8d
    open

    Merge pull request #28 from vastsa/fix/ci-session-import-gates

    fix: restore session-import CI gates

  25. 09-11 18:26 sha: 525f494
    open

    fix: restore session-import CI gates

    Stop treating host method calls such as pi.session.import() as dynamic module loading, load plugin tests from the in-repo path, and align the 0.4.4 contract test with the published manifest and package.

  26. 09-11 18:21 sha: 911e053
    open

    feat(plugin): publish io.github.muzimu217.session-import 0.4.7 (declarative source drivers + user-defined sources)

  27. 09-11 14:18 sha: d44c283
    open

    Merge pull request #24 from Tioit-Wang/feat/pi-file-manager

    feat(pi.file-manager): add editable file manager work-panel view

  28. 09-11 14:05 sha: 5fbe846
    open

    feat(pi.file-manager): add editable file manager work-panel view

    Adds the marketplace's first contributes.views plugin: an editable file manager docked in the right work panel, alongside the bundled read-only Files view rather than replacing it. - Full directory tree with per-file-type icons, lazy loading and keyboard navigation; the selected row is visually distinct from hover. - Split list/editor layout with a draggable divider that persists. - CodeMirror 6 editing with bundled syntax highlighting for 30+ languages and a Markdown preview/edit toggle. - Context menu for create file/folder, rename, move, open and refresh. - Paginated filename search and .gitignore/.ignore aware filtering (with no rule file present nothing is filtered out). - Declares only ui.view. File access runs on Node fs inside the plugin process because manifest.fs cannot express a whole-tree write, so the plugin enforces its own limits: root-relative paths only with symlink and junction escapes refused, a credential-path deny list, atomic writes (temp + fsync + rename), mtime/size conflict detection before overwriting an out-of-editor change, a write audit log and size caps. Packed with scripts/pack_plugin.py; catalog rebuilt as a minimal diff so no existing entry changes. 10 new tests cover manifest identity, the file://-safe view entry, the pi.fs-free path, traversal and credential refusals, symlink escape, atomic and conflicting writes, ignore rules, search pagination and the no-workspace path. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>

  29. 09-11 13:46 sha: d4945f2
    open

    Merge pull request #23 from muzimu217/feat/session-import-0.4.4

    feat(plugin): publish io.github.muzimu217.session-import 0.4.4

  30. 09-11 06:59 sha: 2ecb03d
    open

    feat(plugin): publish io.github.muzimu217.session-import 0.4.4

    Bump Universal Session Import from 0.4.2 to 0.4.4: - Adapt to the merged official session-import contract pi.session.importBatch (#169): tighten tool-payload guardrails by serialized-byte depth, skip bad entries instead of poisoning the whole batch, cap messages at the official 2000 limit, and route through the single import.commit entry point (with automatic fallback to the legacy session.import bridge when the host has not wired it). - Forge adapts to the official session.list {items} shape. - Add bus/history/i18n/save-modes modules, expanded tests, and docs. Local marketplace compatibility verified: the regenerated catalog entry passes scripts/check-marketplace-catalog.mjs and the package SHA-256/size match.

  31. 09-11 00:42 sha: f38be16
    open

    Merge fix: declare session import permission

  32. 09-11 00:41 sha: 2e426da
    open

    fix(io.github.muzimu217.session-import): declare session import permission

  33. 09-10 18:13 sha: 27cd58b
    open

    Merge pull request #22: add workspace file guard

    Reviewed and approved after security hardening. Preserves the author commit and the follow-up fix commit.

  34. 09-10 18:02 sha: 9a64ca7
    open

    fix(pi.workspace-file-guard): harden path checks and env output

  35. 09-10 17:22 sha: f137ec4
    open

    feat: 新增 pi.workspace-file-guard 工作区文件护栏

    把测试、临时、草稿、日志、缓存等垃圾文件关在当前工作区或 PI scratch。 行为约束 skill 包,注册路径分类工具,不写盘、不联网。

  36. 09-10 16:24 sha: f7440cc
    open

    feat: reorganize plugin categories and site branding

  37. 09-10 16:11 sha: 8657845
    open

    feat(pi.parchment): add theme marketplace tag

  38. 09-10 16:03 sha: b9d8936
    open

    fix(website): contain images in plugin documentation

  39. 09-10 15:52 sha: 492ddad
    open

    fix(pi.markdown): repack 0.5.0 artifact

  40. 09-10 15:50 sha: d09c74b
    open

    Merge pull request #21 from pkmcenter/pi.parchment-1.0.2

    docs(pi.parchment): add README screenshots; release 1.0.2

  41. 09-10 15:42 sha: d6cb3be
    open

    chore(pi.parchment): sync catalog sha/size with LF-repacked 1.0.2 package

  42. 09-10 15:38 sha: 5ebbb15
    open

    fix(pi.parchment): normalize package line endings to LF

    Repack pi.parchment-1.0.2 with LF-normalized source files so the security audit's packed-bytes-vs-source comparison passes on CI (Linux checkout). Previous package embedded CRLF from a Windows working copy.

  43. 09-10 15:32 sha: 28826e1
    open

    fix(pi.parchment): beat host light-theme cascade on code surfaces; update version test to 1.0.2

  44. 09-10 15:20 sha: b067eee
    open

    docs(pi.parchment): add README screenshots; release 1.0.2

  45. 09-10 10:34 sha: b3930dd
    open

    chore(pi.markdown): pack 0.5.0 and rebuild the catalog

    python scripts/pack_plugin.py plugins/pi.markdown sha256 e8433c1b3b8477f5c893ab816db194915551c32d5609a7e90bb28241c4d055fc size 18666645 bytes python scripts/rebuild_catalog.py regenerates the index for all 17 plugins, which is the same wholesale retimestamp the previous catalog commit carried. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>

  46. 09-10 10:34 sha: 017b841
    open

    feat(pi.markdown): replace open_file with a read-only preview mode

    preview_file opens one Markdown/text file by absolute path as a read-only preview: the panel hides the sidebar, renders the document, and the user clicks Edit to modify it, after which edits save back automatically. The file is read and written through node fs, so no directory grant is needed and any absolute path works; fs.read/fs.write and manifest.fs are dropped. The panel also moves to the Typora Inkwell palette (light/dark), gives the code block a single rounded container with a language header, follows the theme in Mermaid diagrams, and drops dead selectors that never matched the React tree. Co-authored-by: CommandCodeBot <noreply@commandcode.ai>

  47. 09-10 09:03 sha: 9549b46
    open

    fix(session-import): align plugin with security gates

  48. 09-10 08:55 sha: 4d2b819
    open

    chore: add plugin security review gate

  49. 09-10 08:28 sha: c0561a9
    open

    fix(pi.parchment): correct theme cascade and panel chrome

  50. 09-10 08:37 sha: 3850710
    open

    Merge pull request #19 from muzimu217/feat/session-import

  51. 09-10 08:25 sha: b2a94d2
    open

    Merge pull request #18 from pkmcenter/pi.parchment

    Add pi.parchment 1.0.0: warm parchment global theme

  52. 09-10 05:01 sha: 49960ef
    open

    feat(plugin): publish io.github.muzimu217.session-import 0.4.1

    Universal session import + forge: bring sessions in from ZCode, WorkBuddy, Claude Code, Codex, OpenCode and Pi, then distill them back into project conventions and reusable practices. - six-source detection, per-project grouping, preview before import - session forge: pi.agent.complete distillation with a corpus budget and an ADR 0174 rate-limit guard; fs.write scoped to AGENTS.md / *.md / docs/** / .agents/skills/** - i18n (en, zh-CN), categories, changelog and safetyNotes per CONTRIBUTING - engines >=0.14.3, matching the newest community plugins Packed with scripts/pack_plugin.py; catalog rebuilt with scripts/rebuild_catalog.py.

  53. 09-10 04:22 sha: 423cfd4
    open

    Add pi.parchment 1.0.0: warm parchment global theme

  54. 09-10 01:42 sha: 0f6301a
    open

    docs: split README into English (default) and Chinese editions

    README.md is now English-first with a link to README.zh-CN.md. Chinese content moved to README.zh-CN.md with a back-link to the English version. Both manifest examples include the i18n block.

  55. 09-09 18:51 sha: fd5b834
    open

    chore(catalog): delist com.vastsa.voice-assistant

    Keep the source in plugins/ but omit the voice assistant from catalog.json so the marketplace no longer lists it.

  56. 09-09 18:30 sha: 9b68e43
    open

    fix(com.vastsa.voice-assistant): emit catalog author as a string

    PI-Desktop parses marketplace author as a string. An object author on the voice-assistant entry made the whole catalog refresh fail.

  57. 09-09 18:10 sha: 2661a67
    open

    docs: add AGENTS.md for AI coding agents

  58. 09-09 18:08 sha: 99f57a9
    open

    fix: add missing i18n blocks and safetyNotes to 3 plugins

    - com.vastsa.voice-assistant: add i18n block (en/zh-CN with safetyNotes) - demo.hello: add safetyNotes to i18n - demo.workspace-notes: add safetyNotes to i18n All 16 plugins now have complete i18n (name, description, safetyNotes) in both en and zh-CN.

  59. 09-09 18:04 sha: 9db8cf5
    open

    chore: pack pi.goal-x 0.1.1 and rebuild catalog (16 plugins)

  60. 09-09 17:45 sha: e351b64
    open

    fix(chrome): opt remaining panels into v3 host chrome

    Voice Assistant and Log Viewer still declared the old panel chrome contract, which failed tests/panel-chrome.test.mjs on CI.

  61. 09-09 17:29 sha: 879b031
    open

    chore: restore GitHub-first plugin publish flow

    plugins.aiuo.net is not live yet. Pack + rebuild_catalog.py is again the official release path, and the hourly mirror workflow is removed so it cannot overwrite catalog.json.

  62. 09-09 17:24 sha: e013db1
    open

    fix(pi.goal-x): docked chrome, fail-closed storage, namespaced commands

    Keep a usable toolbar when the work-panel titlebar height is 0, show the three-pane layout at the default window size, refuse malformed goal state, write a complete settings object, and gate renderer mocks behind ?preview=1.

  63. 09-09 17:19 sha: b606af3
    open

    feat(plugin): publish standalone voice assistant

  64. 09-09 17:05 sha: 89adbb4
    open

    Merge pull request #17 from niansi1/feat/pi-goal-x

    feat: add Goal X plugin

  65. 09-09 17:01 sha: 08bb222
    open

    chore(catalog): publish pi.ssh-manager 0.1.2

    Sync the GitHub raw catalog readme and updatedAt with the packed 0.1.2 artifact so marketplace clients can install config scan, identity-file picker, OpenSSH diagnostics, and the Windows ssh.exe env fix.

  66. 09-09 16:41 sha: d894f07
    open

    feat(pi.ssh-manager): scan OpenSSH config and diagnose connect failures

    Import concrete hosts from ~/.ssh/config, add an identity-file picker, show OpenSSH diagnostics instead of a bare exit 255, inherit Windows system env so ssh.exe can run, and kill leftover ssh processes on unload.

  67. 09-09 16:22 sha: 330a4eb
    open

    feat: add Goal X plugin

  68. 09-09 08:17 sha: 17dd4a1
    open

    Merge pull request #16 from vastsa/feat/catalog-pi-log-viewer

    catalog: register pi.log-viewer 0.2.0

  69. 09-09 08:17 sha: e683bba
    open

    catalog: register pi.log-viewer 0.2.0

    plugins.aiuo.net is not live yet; GitHub catalog.json is the client fallback source. Add the installable piplug and entry so PI-Desktop marketplace search can find Log Viewer.

  70. 09-09 03:17 sha: 24ae407
    open

    Merge pull request #15 from vastsa/feat/add-pi-log-viewer

    feat(plugins): add pi.log-viewer (Log Viewer)

  71. 09-09 03:16 sha: bd09d43
    open

    feat(plugins): add pi.log-viewer (Log Viewer)

    Streamed large-log viewer: virtual scroll, tail, search vs filter, level badges, pin lines, bilingual manifest (en / zh-CN).

  72. 09-09 02:46 sha: 315274c
    open

    chore(pi.bianqian): refresh catalog for 0.1.5

  73. 09-09 02:44 sha: 77875f2
    open

    fix(pi.bianqian): avoid host capsule overlap

  74. 09-07 07:28 sha: c8b3493
    open

    chore(catalog): publish pi.token-insights 0.4.8

    Point the GitHub raw catalog at the packed 0.4.8 artifact so marketplace clients can install the completed-turn remainder scan.

  75. 09-07 07:16 sha: 71b4cfc
    open

    feat(pi.token-insights): fold host completed-turn remainders

    PI-Desktop transcript rows still drive model rankings. When host turns totals exceed those rows, add the subagent remainder without rewriting message.usage. This panel is the usage dashboard after Settings dropped its Usage page.

  76. 09-07 06:49 sha: 8603539
    open

    chore(catalog): publish pi.gitlens 0.2.7

    Source already followed the app color mode only; ship the package so the GitHub raw catalog can install it.

  77. 09-07 02:41 sha: b670fc3
    open

    chore(catalog): publish pi.terminal 0.1.6

    Windows ConPTY now stays inside the work panel instead of opening a separate PowerShell window.

  78. 09-07 02:41 sha: 6151af2
    open

    fix(pi.terminal): attach Windows PowerShell to in-app ConPTY

    Passing &hpc to PROC_THREAD_ATTRIBUTE_PSEUDOCONSOLE left the child unattached, so powershell.exe opened a real console window instead of feeding the work-panel xterm. Pass the HPCON handle, hide the child console, and build the Windows helper as GUI subsystem.

  79. 09-07 02:10 sha: eedaef9
    open

    fix(appearance): follow app color mode, never snap to OS

    Resolving "system" against prefers-color-scheme fought the host palette and flashed when the app and OS disagreed. Keep the last app light/dark instead, and stop the extra terminal appearance poll from overwriting it.

  80. 09-06 15:09 sha: 091a79e
    open

    feat: migrate marketplace to plugins.aiuo.net, repo becomes GitHub raw mirror

    - Add CI workflows: sync-catalog (hourly mirror) and tests - Add scripts/sync_catalog.py and tests/test_sync_catalog.py - Update CLAUDE.md, README, CONTRIBUTING to reflect new architecture - Update website docs for marketplace migration - Add __pycache__/ to .gitignore, clean up rebuild_catalog.py docstring

  81. 09-06 12:58 sha: 906d09e
    open

    chore(catalog): publish pi.terminal 0.1.4 and pi.gitlens 0.2.6

    Work-panel views follow the app light/dark mode live.

  82. 09-06 12:24 sha: 8cf73ac
    open

    fix(appearance): follow app color mode in work-panel views

    Work-panel views never receive appearance:changed. The shared adapter now polls app.getAppearance, Terminal and Git Lens proxy the host snapshot from the plugin process, and xterm refreshes its canvas with the active palette.

  83. 09-06 09:02 sha: ce062be
    open

    feat(pi.gitlens): drop agent tools, keep work-panel UI only

    Git Lens no longer registers git_* tools or the Git workflow skill. The dashboard stays in the right work panel for humans; permission is ui.view only.

  84. 09-06 08:57 sha: a93fbf5
    open

    feat(pi.terminal): add work-panel terminal with per-project sessions

    Otty-inspired interactive terminal that docks in the right work panel. Sessions are login shells with the user PATH, driven by a bundled PTY helper, and isolated per open workspace so switching projects cannot mix tabs.

  85. 09-06 08:57 sha: 762bc81
    open

    feat(pi.gitlens): dock in the work panel and follow app locale

    Release 0.2.4: Git Lens no longer opens a detached window; it docks in the right work panel, with a compact overview, full-page diff sheets, and UI that follows the host language from the first paint.

  86. 09-01 13:26 sha: 9f63f74
    open

    chore(pi.token-insights): publish 0.4.7

  87. 09-01 13:26 sha: 32b3051
    open

    merge: sync remote marketplace updates

  88. 09-01 13:26 sha: bb69002
    open

    chore(catalog): publish pi.ssh-manager 0.1.1

  89. 09-01 13:24 sha: afe760d
    open

    feat(pi.ssh-manager): merge SSH manager plugin

  90. 09-01 12:00 sha: 2341677
    open

    fix(pi.token-insights): remove duplicate Windows scrollbar gutter

  91. 08-27 16:02 sha: 199ac57
    open

    fix(pi.token-insights): keep titlebar clear of window capsule

    The panel paints through the host's 46px band under v3 chrome, but the three-button window-control capsule still floats over the top-right corner. The titlebar put its appearance and refresh buttons at right: 12px, so both sat under the capsule and stopped being clickable. Reserve the capsule's 104px corner once as --capsule-reserve and consume it where the panel reaches that corner: - .titlebar pads the right side by the reserve - .menu re-applies it, since an absolute offset resolves against the padding box and would otherwise stay under the capsule - the <=560px gutter override now tightens the left side only; its padding-inline shorthand previously reset the right side to 12px - a long localized title truncates instead of running under the reserve

  92. 08-22 08:48 sha: a6918cc
    open

    Merge pull request #12 from vastsa/feat/pi-todo-065-background-service

    feat(pi.todo): 0.6.5 到期提醒迁移到宿主后台服务(due-reminder + background.service)

  93. 08-22 08:18 sha: 9670de2
    open

    feat(pi.todo): release v0.6.5 sync from source repo (background due-reminder service)

  94. 08-22 07:39 sha: fa6576e
    open

    Merge pull request #11 from vastsa/feat/v3-header-chrome-064-034-044

    feat: 全部插件 v3 头部对齐 — pi.todo 0.6.4 / pi.scratch-calc 0.3.4 / pi.super-domain-man 0.4.4

  95. 08-22 07:38 sha: a3b2fac
    open

    chore(catalog): publish pi.todo 0.6.4 / pi.scratch-calc 0.3.4 / pi.super-domain-man 0.4.4

  96. 08-22 07:38 sha: 09ce276
    open

    feat(pi.super-domain-man): release v0.4.4 sync from source repo (v3 header chrome + capsule retint)

  97. 08-22 07:38 sha: 3b2a8c7
    open

    feat(pi.scratch-calc): release v0.3.4 sync from source repo (v3 header chrome + capsule retint)

  98. 08-22 07:38 sha: 2dfeef8
    open

    feat(pi.todo): release v0.6.4 sync from source repo (v3 header chrome + capsule retint)

  99. 08-22 06:52 sha: e4729bb
    open

    build(pi.gitlens): refresh 0.1.4 package

  100. 08-22 06:52 sha: cbb666f
    open

    fix(pi.gitlens): guard capsule retint observer