{"_id":"@alxark/opencode-panel-apps","_rev":"2-be29f8af1168ba7feeff80a22f9ef717","name":"@alxark/opencode-panel-apps","dist-tags":{"latest":"0.1.7"},"versions":{"0.1.0":{"name":"@alxark/opencode-panel-apps","version":"0.1.0","keywords":["opencode","opencode-plugin","tui","sidebar","panel","solid-js"],"author":{"name":"Alex Arakelian"},"license":"MIT","_id":"@alxark/opencode-panel-apps@0.1.0","maintainers":[{"name":"alxark","email":"aleksey@arakelyan.io"}],"homepage":"https://github.com/alxark/opencode-panel-apps#readme","bugs":{"url":"https://github.com/alxark/opencode-panel-apps/issues"},"dist":{"shasum":"e0155aa79709061c4a9b7d69a3efddf7e69c4295","tarball":"https://registry.npmjs.org/@alxark/opencode-panel-apps/-/opencode-panel-apps-0.1.0.tgz","fileCount":6,"integrity":"sha512-6s3MtZqMSfnprfZT7Zm1nZR1nADR6AXj1j6g7iwLD+0zj6x3i3Zw74WxOv//XrmZmVQS1aIdI+voCrdveYNVyw==","signatures":[{"sig":"MEUCIQDhdcwkBlLpRcdX9aSImOp/NNmw1T+uq2iO7DJbq+nFvQIgYurf4OfekMaLY7f1I5hMVxRWzKELhwrwyGJzoSrwgaU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":12075},"type":"module","engines":{"node":">=20.0.0"},"exports":{"./tui":{"types":"./dist/tui.d.ts","default":"./dist/tui.tsx"}},"gitHead":"7c8723a60aa58c2e9c987b069fea706ffa27d876","scripts":{"build":"tsc && node scripts/prepare-tui-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"_npmUser":{"name":"alxark","email":"aleksey@arakelyan.io"},"oc-plugin":["tui"],"repository":{"url":"git+https://github.com/alxark/opencode-panel-apps.git","type":"git"},"_npmVersion":"11.11.0","description":"OpenCode TUI plugin: render a sidebar panel of periodic shell-command outputs, configured via opencode-panel-apps.jsonc.","directories":{},"_nodeVersion":"25.8.1","dependencies":{"solid-js":"^1.9.12","comment-json":"^5.0.0","@opentui/solid":"^0.2.6"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"typescript":"^5.9.3","@types/node":"^22.0.0","@opencode-ai/plugin":"^1.14.44"},"peerDependencies":{"@opencode-ai/plugin":"^1.4.3"},"_npmOperationalInternal":{"tmp":"tmp/opencode-panel-apps_0.1.0_1778403372775_0.23597820530254832","host":"s3://npm-registry-packages-npm-production"}},"0.1.7":{"name":"@alxark/opencode-panel-apps","version":"0.1.7","description":"OpenCode TUI plugin: render a sidebar panel of periodic shell-command outputs, configured via opencode-panel-apps.jsonc.","type":"module","exports":{"./tui":{"types":"./dist/tui.d.ts","default":"./dist/tui.tsx"}},"oc-plugin":["tui"],"publishConfig":{"access":"public"},"scripts":{"build":"tsc && node scripts/prepare-tui-dist.mjs","typecheck":"tsc --noEmit","prepublishOnly":"npm run build"},"keywords":["opencode","opencode-plugin","tui","sidebar","panel","solid-js"],"license":"MIT","author":{"name":"Alex Arakelian"},"repository":{"type":"git","url":"git+https://github.com/alxark/opencode-panel-apps.git"},"bugs":{"url":"https://github.com/alxark/opencode-panel-apps/issues"},"homepage":"https://github.com/alxark/opencode-panel-apps#readme","engines":{"node":">=20.0.0"},"dependencies":{"@opentui/solid":"^0.2.6","comment-json":"^5.0.0","solid-js":"^1.9.12"},"peerDependencies":{"@opencode-ai/plugin":"^1.4.3"},"devDependencies":{"@opencode-ai/plugin":"^1.14.44","@types/node":"^22.0.0","typescript":"^5.9.3"},"gitHead":"82359104f8d50f1f2de8aaeafabd5eb82e2ea88b","_id":"@alxark/opencode-panel-apps@0.1.7","_nodeVersion":"24.14.1","_npmVersion":"11.11.0","dist":{"integrity":"sha512-yLzkZ4f3WM2mLhRpMbtfQKDDdQPiYzFJiMEaskdvqLThhP0eWBIbxwAw3OlW16qzA5+BUgC6LZLktspTX+rlQw==","shasum":"2499f306cb872dd5c1205f38efa31659346925bb","tarball":"https://registry.npmjs.org/@alxark/opencode-panel-apps/-/opencode-panel-apps-0.1.7.tgz","fileCount":6,"unpackedSize":12075,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@alxark%2fopencode-panel-apps@0.1.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIFdo6qRJhnw9wYs6f/HptNYYlB8IrqKdXVMh61zatPf7AiBFaf7N4stpOBC0T0Kjs33MWraHzhNwh/f27bCXT3BecA=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:af6701f9-a0d3-490e-8cdd-381ea6722542"}},"directories":{},"maintainers":[{"name":"alxark","email":"aleksey@arakelyan.io"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/opencode-panel-apps_0.1.7_1778408071055_0.5942718858144311"},"_hasShrinkwrap":false}},"time":{"created":"2026-05-10T08:56:12.596Z","modified":"2026-05-10T10:14:31.496Z","0.1.0":"2026-05-10T08:56:12.903Z","0.1.7":"2026-05-10T10:14:31.199Z"},"bugs":{"url":"https://github.com/alxark/opencode-panel-apps/issues"},"author":{"name":"Alex Arakelian"},"license":"MIT","homepage":"https://github.com/alxark/opencode-panel-apps#readme","keywords":["opencode","opencode-plugin","tui","sidebar","panel","solid-js"],"repository":{"type":"git","url":"git+https://github.com/alxark/opencode-panel-apps.git"},"description":"OpenCode TUI plugin: render a sidebar panel of periodic shell-command outputs, configured via opencode-panel-apps.jsonc.","maintainers":[{"name":"alxark","email":"aleksey@arakelyan.io"}],"readme":"# @alxark/opencode-panel-apps\n\nAn [OpenCode](https://github.com/sst/opencode) TUI plugin that renders a sidebar\npanel showing the output of one or more shell commands, refreshed on a\nconfigurable interval.\n\n## Install\n\n```sh\nnpm install @alxark/opencode-panel-apps\n```\n\nThen add the plugin to your OpenCode configuration (`opencode.json` or\nequivalent):\n\n```json\n{\n  \"plugin\": [\"@alxark/opencode-panel-apps\"]\n}\n```\n\n## Configuration\n\nCreate `opencode-panel-apps.jsonc` in your OpenCode config directory (the\nplugin reads `OPENCODE_CONFIG_DIR` first, otherwise the directory containing\nyour active OpenCode config file):\n\n```jsonc\n{\n  \"apps\": [\n    {\n      \"icon\": \"git\",\n      \"command\": [\"git\", \"rev-parse\", \"--abbrev-ref\", \"HEAD\"],\n      \"period\": 5000\n    },\n    {\n      \"icon\": \"load\",\n      \"command\": [ \"uptime\" ],\n      \"period\": 10000\n    }\n  ]\n}\n```\n\nEach entry takes:\n\n| Field     | Type       | Notes                                                                  |\n| --------- | ---------- | ---------------------------------------------------------------------- |\n| `icon`    | `string`   | Required. Short label rendered before the output line.                 |\n| `command` | `string[]` | Required. `argv`-style — first element is the binary, rest are args.   |\n| `period`  | `number`   | Optional. Refresh interval in ms. Default `10000`, minimum `1000`.     |\n\n## Behavior\n\n- The command runs without a shell (`shell: false`); use `sh -c \"…\"` if you\n  need pipes or globs.\n- Each invocation has a timeout of 80 % of `period`, capped at 5000 ms.\n- The first non-empty line of stdout is shown; if stdout is empty, stderr is\n  used; otherwise `ok`. Output is trimmed to 80 characters.\n- On non-zero exit or timeout the entry is rendered in the theme's error\n  colour with an `error: …` prefix.\n- A missing or invalid `opencode-panel-apps.jsonc` shows a single\n  `⚠ - <reason>` line.\n\n## License\n\nMIT — see [LICENSE](./LICENSE).\n","readmeFilename":"README.md"}