Not in the top 1,000 by GitHub stars
mikeyobrien/rho
An AI agent that stays running, remembers across sessions, and checks in on its own. macOS, Linux, Android. Built on Pi.
History
Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.
View weekly changes
SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/clipboard/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/contacts/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/device/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/dialog/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/location/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/media/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/notification/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/open-url/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/sms/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/stt/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/tasker-xml/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/android/skills/tts/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/linux/skills/clipboard/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/linux/skills/notification/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/linux/skills/open-url/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/linux/skills/tts/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/macos/skills/clipboard/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/macos/skills/notification/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/macos/skills/open-url/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
platforms/macos/skills/tts/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/auto-memory/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/code-assist/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/code-task-generator/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/codebase-summary/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/create-sop/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/eval/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/memory-consolidate/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/pdd/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/pdd-build/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/release-changelog/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/rho-cloud-email/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/rho-cloud-onboard/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Network or broad shell → After Network or broad shell
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Network or broad shell
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/session-search/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/small-improvement/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/update-pi/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Instructions only → After Instructions only
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Instructions only
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
skills/vault-clean/SKILL.md
Week of Nov 2, 2026 · +0 / −0 lines
Before Local scripts → After Local scripts
073a3ee8a5dc → 073a3ee8a5dc
Week of Oct 26, 2026 · Line counts unavailable
Before Not checked yet → After Local scripts
First observation → 073a3ee8a5dc
No earlier version was observed for comparison.
Verified commit 073a3ee8a5dc0efd5dd32d773a760575ed38abc7
git clone --filter=blob:none --no-checkout https://github.com/mikeyobrien/rho.git .hotskills/mikeyobrien-rho && git -C .hotskills/mikeyobrien-rho checkout --detach 073a3ee8a5dc0efd5dd32d773a760575ed38abc7
# Copy each selected skill directory from .hotskills/mikeyobrien-rho into .agents/skills/<skill-name>/Heat
1.8- Star growth, last 7 daysNot available
- Star growth, last 24 hoursNot available
- Rank movement, last 7 daysNot available
- Commits, last 30 daysNot available
- Accounts asking about it through MCP, last 7 daysNot available
- Hot votes this weekNot available
Heat never changes the order by stars, and sponsorship never touches it. How heat works
Stars over time
30-day change not yet available: not enough history.
Individual skills in this repository
- install-rho
/ - clipboard
platforms/android/skills/clipboard - contacts
platforms/android/skills/contacts - device
platforms/android/skills/device - dialog
platforms/android/skills/dialog - location
platforms/android/skills/location - media
platforms/android/skills/media - notification
platforms/android/skills/notification - open-url
platforms/android/skills/open-url - sms
platforms/android/skills/sms - stt
platforms/android/skills/stt - tasker-xml
platforms/android/skills/tasker-xml - tts
platforms/android/skills/tts - clipboard
platforms/linux/skills/clipboard - notification
platforms/linux/skills/notification - open-url
platforms/linux/skills/open-url - tts
platforms/linux/skills/tts - clipboard
platforms/macos/skills/clipboard - notification
platforms/macos/skills/notification - open-url
platforms/macos/skills/open-url - tts
platforms/macos/skills/tts - auto-memory
skills/auto-memory - code-assist
skills/code-assist - code-task-generator
skills/code-task-generator - codebase-summary
skills/codebase-summary - create-sop
skills/create-sop - eval
skills/eval - memory-consolidate
skills/memory-consolidate - pdd
skills/pdd - pdd-build
skills/pdd-build - release-changelog
skills/release-changelog - rho-cloud-email
skills/rho-cloud-email - rho-cloud-onboard
skills/rho-cloud-onboard - session-search
skills/session-search - small-improvement
skills/small-improvement - update-pi
skills/update-pi - vault-clean
skills/vault-clean
How it works
install-rho
When your agent uses it
Install and configure Rho from scratch (Doom-style init.toml + sync). Only prereq: a coding agent that can run shell commands.
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
1,767 tokensWhen the skill is activated
Reference documents
123,967 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Parameters
- Steps
- Troubleshooting
Scripts executed separately
cli/commands/bootstrap.tscli/commands/config.tscli/commands/doctor.tscli/commands/init.tscli/commands/login.tscli/commands/logs.tscli/commands/skills.tscli/commands/start.tscli/commands/status.tscli/commands/stop.tscli/commands/sync.tscli/commands/telegram.tscli/commands/trigger.tscli/commands/upgrade.tscli/commands/web.tscli/config.tscli/daemon-core.tscli/doctor-core.tscli/index.tscli/init-core.tscli/registry.tscli/rho.mjscli/sync-core.tscli/telegramd.mjscli/telegramd.tsextensions/brave-search/index.tsextensions/email/index.tsextensions/lib/auto-memory-delta.tsextensions/lib/auto-memory-model.tsextensions/lib/auto-memory-status.tsextensions/lib/brain-bootstrap-schema.tsextensions/lib/brain-bootstrap-state.tsextensions/lib/brain-migration.tsextensions/lib/brain-store.tsextensions/lib/brain-tool.tsextensions/lib/file-lock.tsextensions/lib/lease-lock.tsextensions/lib/memory-settings.tsextensions/lib/mod.tsextensions/lib/provider-usage.tsextensions/lib/transient-blocklist.tsextensions/lib/vault-lib.tsextensions/lib/vault-search-lib.tsextensions/memory-viewer/index.tsextensions/review/command.test.tsextensions/review/files.test.tsextensions/review/files.tsextensions/review/format.test.tsextensions/review/format.tsextensions/review/git-tracker.tsextensions/review/index.tsextensions/review/package.jsonextensions/review/server.test.tsextensions/review/server.tsextensions/review/tui.test.tsextensions/review/tui.tsextensions/review/web.test.tsextensions/review/web/js/review.jsextensions/rho/bootstrap/slash-bootstrap.tsextensions/rho/index.tsextensions/rho/tasks-core.tsextensions/telegram/api.tsextensions/telegram/check-trigger.tsextensions/telegram/index.tsextensions/telegram/jobs.tsextensions/telegram/lib.tsextensions/telegram/log.tsextensions/telegram/operator-config.tsextensions/telegram/outbound.tsextensions/telegram/pending-approvals.tsextensions/telegram/poll-leadership.tsextensions/telegram/router.tsextensions/telegram/rpc.tsextensions/telegram/session-map.tsextensions/telegram/slash-contract.tsextensions/telegram/status.tsextensions/telegram/stt.tsextensions/telegram/worker-lock.tsextensions/telegram/worker-runtime.tsextensions/telegram/worker.tsextensions/usage-bars/index.tsextensions/vault-search/index.tsextensions/x-search/index.tsinstall.shmobile/rho-android/android/gradlewmobile/rho-android/android/gradlew.batmobile/rho-android/capacitor.config.tsmobile/rho-android/jest.config.jsmobile/rho-android/package.jsonmobile/rho-android/src/app-lifecycle.tsmobile/rho-android/src/connection-coordinator.tsmobile/rho-android/src/http-policy.tsmobile/rho-android/src/index.tsmobile/rho-android/src/live-mode-controller.tsmobile/rho-android/src/mapConnectionErrorToMessage.tsmobile/rho-android/src/models/profile.tsmobile/rho-android/src/replay-resume.tsmobile/rho-android/src/session-monitor.tsmobile/rho-android/src/storage/profile-repository.tsmobile/rho-android/src/storage/secure-token-store.tsmobile/rho-android/tests/android-strings.test.tsmobile/rho-android/tests/app-lifecycle.test.tsmobile/rho-android/tests/capacitor-config.test.tsmobile/rho-android/tests/connection-coordinator.test.tsmobile/rho-android/tests/http-policy.test.tsmobile/rho-android/tests/live-mode-controller.test.tsmobile/rho-android/tests/mapConnectionErrorToMessage.test.tsmobile/rho-android/tests/profile-validation.test.tsmobile/rho-android/tests/replay-resume.test.tsmobile/rho-android/tests/session-monitor.test.tsmobile/rho-android/tests/storage.test.tsmobile/rho-android/www/js/app-lifecycle.jsmobile/rho-android/www/js/connection-coordinator.jsmobile/rho-android/www/js/http-policy.jsmobile/rho-android/www/js/index.jsmobile/rho-android/www/js/live-mode-controller.jsmobile/rho-android/www/js/mapConnectionErrorToMessage.jsmobile/rho-android/www/js/models/profile.jsmobile/rho-android/www/js/replay-resume.jsmobile/rho-android/www/js/session-monitor.jsmobile/rho-android/www/js/storage/profile-repository.jsmobile/rho-android/www/js/storage/secure-token-store.jspackage.jsonplatforms/android/extensions/tasker.tsplatforms/android/scripts/bin/sttplatforms/android/scripts/bin/stt-sendplatforms/linux/setup.shplatforms/macos/setup.shpostinstscripts/bench.shscripts/check-asset-size.shscripts/check-line-limit.shscripts/perf-summary.shscripts/pre-commit.shscripts/telegram-smoke.tstests/e2e/Dockerfiletests/e2e/run.shtests/e2e/test-e2e.shtests/e2e/test-npm-install.shtests/e2e/test-regressions.shtests/e2e/test-start-bug.shtests/generate-synthetic-brain.tstests/playwriter/web-multi-session-gates.tstests/test-android-release-workflow.tstests/test-android-store-readiness.tstests/test-auto-memory-delta.tstests/test-auto-memory-model.tstests/test-bootstrap-command.tstests/test-bootstrap-slash.tstests/test-brain-bootstrap-schema.tstests/test-brain-bootstrap-state.tstests/test-brain-migration.tstests/test-brain-prompt.tstests/test-brain-store.tstests/test-brain-tool.tstests/test-cli.tstests/test-config.tstests/test-daemon.tstests/test-doctor.tstests/test-file-lock.tstests/test-init.tstests/test-iphone-docs.shtests/test-lease-lock.tstests/test-memory-consolidate.shtests/test-memory-settings.tstests/test-mobile-parity-smoke.tstests/test-nix-android-dev-shell.tstests/test-one-skill-system.tstests/test-registry.tstests/test-regressions.tstests/test-review-deferred-flow.tstests/test-review-panel.tstests/test-review-store.tstests/test-rho-login.shtests/test-rpc-slash-notify-race.tstests/test-slash-contract-parity.tstests/test-sync.tstests/test-tasks.tstests/test-telegram-stt.tstests/test-telegram-worker-lock.tstests/test-telegram-worker-runtime.tstests/test-telegram.tstests/test-templates.tstests/test-terminal-manager.tstests/test-termux-install.tstests/test-tmux-config.shtests/test-vault-search.tstests/test-vault.tstests/test-web-chat-init-no-marked.tstests/test-web-chat-reconnect.tstests/test-web-chat-restore-persistence.tstests/test-web-chat-session-ordering.tstests/test-web-chat-session-state.tstests/test-web-chat-slash.tstests/test-web-chat-ws-routing.tstests/test-web-config-provider-usage.tstests/test-web-line-limit.tstests/test-web-mobile-auth-gate.tstests/test-web-mobile-auth.tstests/test-web-mobile-live-mode-bridge.tstests/test-web-provider-usage.tstests/test-web-rpc-health-watchdog.tstests/test-web-rpc-live-mode-lease.tstests/test-web-rpc-orphan-config.tstests/test-web-rpc-orphan-smoke.tstests/test-web-rpc-reconnect-smoke.tstests/test-web-rpc-reliability.tstests/test-web-rpc-sessions-api.tstests/test-web-session-reader-api.tstests/test-web-session-usage.tstests/test-web-terminal-reconnect.tstests/test-web-terminal-routes.tstests/test-web-terminal-touch.tstests/test-web-vendor-assets.tsweb/config.tsweb/dev.tsweb/file-watcher.tsweb/git-context-store.tsweb/public/js/app.jsweb/public/js/chat.jsweb/public/js/chat/assistant-turns.jsweb/public/js/chat/chat-dialog-and-focus.jsweb/public/js/chat/chat-git-context-picker.jsweb/public/js/chat/chat-input-and-rpc-send.jsweb/public/js/chat/chat-model-and-extension-ui.jsweb/public/js/chat/chat-reactive-props.jsweb/public/js/chat/chat-rpc-event-routing.jsweb/public/js/chat/chat-session-actions.jsweb/public/js/chat/chat-session-ui.jsweb/public/js/chat/chat-slash-and-stats.jsweb/public/js/chat/chat-streaming-parts.jsweb/public/js/chat/chat-ws-rpc.jsweb/public/js/chat/constants-and-primitives.jsweb/public/js/chat/index.jsweb/public/js/chat/mobile-live-mode-bridge.jsweb/public/js/chat/model-thinking-and-toast.jsweb/public/js/chat/rendering-and-usage.jsweb/public/js/chat/rpc-health-watchdog.jsweb/public/js/chat/rpc-reconnect-runtime.jsweb/public/js/chat/rpc-session-routing.jsweb/public/js/chat/session-list-ordering.jsweb/public/js/chat/session-restore-persistence.jsweb/public/js/chat/session-ui-state.jsweb/public/js/chat/tool-semantics.jsweb/public/js/config.jsweb/public/js/memory.jsweb/public/js/pull-to-refresh.jsweb/public/js/review-panel.jsweb/public/js/slash-contract.jsweb/public/js/terminal-core.jsweb/public/js/terminal-session-store.jsweb/public/js/terminal-touch.jsweb/public/js/vault.jsweb/public/review/js/review.jsweb/public/sw.jsweb/review-store.tsweb/rpc-live-mode-lease.tsweb/rpc-manager.tsweb/rpc-reliability.tsweb/server-auto-memory-routes.tsweb/server-config-sessions-routes.tsweb/server-core.tsweb/server-git-context-routes.tsweb/server-git-routes.tsweb/server-mobile-auth-middleware.tsweb/server-mobile-auth-routes.tsweb/server-mobile-auth-state.tsweb/server-review-routes.tsweb/server-rpc-live-mode-routes.tsweb/server-rpc-ws-routes.tsweb/server-static-routes.tsweb/server-tasks-memory-routes.tsweb/server-terminal-routes.tsweb/server-ui-events.tsweb/server-vault-routes.tsweb/server-vendor-routes.tsweb/server.tsweb/session-reader-api.tsweb/session-reader-io.tsweb/session-reader-parse.tsweb/session-reader-types.tsweb/session-reader.tsweb/task-api.tsweb/terminal-manager.ts
Files
.agents/planning/2026-02-08-doom-style-config/design/detailed-design.mddoc21,521 bytes.agents/planning/2026-02-08-doom-style-config/idea-honing.mddoc22,129 bytes.agents/planning/2026-02-08-doom-style-config/research/agent-config-patterns.mddoc2,884 bytes.agents/planning/2026-02-08-doom-style-config/research/agent-sops-format.mddoc2,420 bytes.agents/planning/2026-02-08-doom-style-config/research/doom-emacs-architecture.mddoc3,065 bytes.agents/planning/2026-02-08-doom-style-config/research/module-registry.mddoc3,086 bytes.agents/planning/2026-02-08-doom-style-config/research/pi-package-filtering.mddoc2,559 bytes.agents/planning/2026-02-08-doom-style-config/research/toml-libraries.mddoc2,502 bytes.agents/planning/2026-02-08-doom-style-config/rough-idea.mddoc806 bytes.agents/planning/2026-02-18-rho-web-multi-session/design/detailed-design.mddoc10,619 bytes.agents/planning/2026-02-18-rho-web-multi-session/idea-honing.mddoc6,390 bytes.agents/planning/2026-02-18-rho-web-multi-session/implementation/plan.mddoc11,171 bytes.agents/planning/2026-02-18-rho-web-multi-session/research/01-current-rho-web-multi-session-readiness.mddoc4,106 bytes.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.mddoc3,290 bytes.agents/planning/2026-02-18-rho-web-multi-session/research/03-v1-mobile-first-ux-and-state-model.mddoc3,259 bytes.agents/planning/2026-02-18-rho-web-multi-session/research/04-poc-acceptance-matrix.mddoc3,394 bytes.agents/planning/2026-02-18-rho-web-multi-session/rough-idea.mddoc1,558 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/design/detailed-design.mddoc13,389 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/idea-honing.mddoc6,329 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-context.mddoc3,001 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.mddoc8,277 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-report.mddoc3,602 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/plan.mddoc9,833 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.mddoc3,294 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.mddoc3,616 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.mddoc4,900 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/research/rho-web-baseline-and-gaps.mddoc3,836 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/research/risk-register-and-mitigation-plan.mddoc3,306 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/rough-idea.mddoc220 bytes.agents/planning/2026-02-21-rho-capacitor-native-app/summary.mddoc3,122 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/design/detailed-design.mddoc23,481 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/idea-honing.mddoc7,890 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/implementation/plan.mddoc15,398 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/README.mddoc3,011 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/codex-desktop-benchmark.mddoc5,365 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/liveview-pwa-patterns.mddoc4,971 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/multimodal-attachments.mddoc5,086 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/pi-integration-surface.mddoc5,918 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/research/terminal-embedding-libghostty.mddoc4,856 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/rough-idea.mddoc123 bytes.agents/planning/2026-03-08-pi-liveview-web-frontend/summary.mddoc3,702 bytes.agents/planning/web-ui-polish/fork-chat-ux.mddoc6,246 bytes.agents/planning/web-ui-polish/plan.mddoc4,536 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-01-implement-telegram-poll-leader-election/context.mddoc4,169 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-01-implement-telegram-poll-leader-election/plan.mddoc3,632 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-01-implement-telegram-poll-leader-election/progress.mddoc2,928 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-02-implement-follower-safe-telegram-operator-flow-and-observability/context.mddoc4,535 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-02-implement-follower-safe-telegram-operator-flow-and-observability/plan.mddoc3,494 bytes.agents/scratchpad/2026-02-13-telegram-multi-instance-poll-conflicts-fix/task-02-implement-follower-safe-telegram-operator-flow-and-observability/progress.mddoc3,121 bytes.agents/summary/.last_commitasset41 bytes.agents/summary/architecture.mddoc1,662 bytes.agents/summary/codebase_info.mddoc1,462 bytes.agents/summary/components.mddoc2,113 bytes.agents/summary/data_models.mddoc1,597 bytes.agents/summary/dependencies.mddoc1,154 bytes.agents/summary/index.mddoc1,979 bytes.agents/summary/interfaces.mddoc1,688 bytes.agents/summary/recent_changes.mddoc533 bytes.agents/summary/review_notes.mddoc1,297 bytes.agents/summary/workflows.mddoc1,485 bytes.agents/tasks/2026-02-16-telegram-fork-timeout-into-jobs.code-task.mddoc6,353 bytes.agents/tasks/2026-02-16-telegram-grammy-only-cleanup.code-task.mddoc4,163 bytes.agents/tasks/2026-02-20-footer-git-context-picker.code-task.mddoc7,356 bytes.agents/tasks/2026-02-22-android-background-streaming-reliability.code-task.mddoc9,383 bytes.agents/tasks/2026-02-23-android-background-reliability/task-01-orphan-policy-mitigation.code-task.mddoc4,641 bytes.agents/tasks/2026-02-23-android-background-reliability/task-02-live-mode-native-no-firebase-reliability.code-task.mddoc7,102 bytes.agents/tasks/2026-03-08-auto-memory-model-from-init.code-task.mddoc7,153 bytes.agents/tasks/2026-03-09-remove-memory-config-split.code-task.mddoc7,175 bytes.agents/tasks/rho-web-perf/no-build-perf-sweep.code-task.mddoc6,482 bytes.agents/tasks/rho-web-tool-rendering/task-01-tool-semantic-parser.code-task.mddoc4,977 bytes.agents/tasks/rho-web-tool-rendering/task-02-smart-collapsed-state.code-task.mddoc4,834 bytes.agents/tasks/rho-web-tool-rendering/task-03-edit-write-semantic-view.code-task.mddoc4,422 bytes.agents/tasks/rho-web-tool-rendering/task-04-read-tool-semantic-view.code-task.mddoc4,189 bytes.agents/tasks/rho-web-tool-rendering/task-05-bash-output-improvements.code-task.mddoc4,376 bytes.agents/tasks/rho-web-tool-rendering/task-06-brain-vault-compact-rendering.code-task.mddoc4,408 bytes.dockerignoreasset75 bytes.github/FUNDING.ymlasset22 bytes.github/workflows/android-release.ymlasset7,038 bytes.github/workflows/e2e.ymlasset359 bytes.github/workflows/mobile-sanity.ymlasset655 bytes.github/workflows/parity-gate.ymlasset1,785 bytes.github/workflows/publish.ymlasset866 bytes.gitignoreasset1,082 bytes.npmignoreasset1,368 bytesAGENTS.mddoc2,966 bytesCHANGELOG.mddoc3,756 bytesLICENSEasset1,069 bytesREADME.mddoc9,447 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesSKILL.mdcore6,604 bytesapt/Packagesasset467 bytesapt/Packages.gzasset364 bytesapt/rho_0.0.3_all.debasset25,888 bytesbrain/brain.jsonl.defaultasset2,718 bytescli/commands/bootstrap.tsruns21,413 bytescli/commands/config.tsruns2,170 bytescli/commands/doctor.tsruns8,672 bytescli/commands/init.tsruns7,359 bytescli/commands/login.tsruns4,388 bytescli/commands/logs.tsruns4,579 bytescli/commands/skills.tsruns12,856 bytescli/commands/start.tsruns12,978 bytescli/commands/status.tsruns6,554 bytescli/commands/stop.tsruns3,565 bytescli/commands/sync.tsruns17,737 bytescli/commands/telegram.tsruns24,811 bytescli/commands/trigger.tsruns3,042 bytescli/commands/upgrade.tsruns8,400 bytescli/commands/web.tsruns13,025 bytescli/config.tsruns6,876 bytescli/daemon-core.tsruns6,764 bytescli/doctor-core.tsruns9,415 bytescli/index.tsruns4,276 bytescli/init-core.tsruns8,036 bytescli/registry.tsruns5,311 bytescli/rho.mjsruns100 bytescli/sync-core.tsruns8,553 bytescli/telegramd.mjsruns104 bytescli/telegramd.tsruns269 bytesconfigs/tmux-rho.confasset1,906 bytesdocs/android-release-runbook.mddoc3,024 bytesdocs/android-store-submission.mddoc2,768 bytesdocs/bootstrap-pr-plan.mddoc1,321 bytesdocs/bootstrapping-brain.mddoc1,990 bytesdocs/brain.mddoc19,923 bytesdocs/configuration.mddoc8,366 bytesdocs/demo.castasset176,359 bytesdocs/demo.gifasset649,080 bytesdocs/demo.mddoc1,422 bytesdocs/email-demo.castasset533,886 bytesdocs/email-demo.gifasset1,201,170 bytesdocs/iphone-setup.mddoc3,099 bytesdocs/logo.pngasset280,385 bytesdocs/meta-prompt-design.mddoc3,458 bytesdocs/mobile-tailscale.mddoc8,911 bytesdocs/nix-android-dev-shell.mddoc2,612 bytesdocs/plans/chat-js-refactor-plan.mddoc5,052 bytesdocs/plans/review-deferred-inbox-plan.mddoc6,765 bytesdocs/pr-description-draft.mddoc2,205 bytesdocs/release-notes-draft.mddoc2,860 bytesdocs/review.mddoc3,132 bytesdocs/rho-android-privacy-policy.mddoc2,656 bytesdocs/skills.mddoc2,172 bytesdocs/slash-command-contract.mddoc3,063 bytesdocs/tasker-profiles.mddoc5,768 bytesdocs/tasker-setup.mddoc7,370 bytesdocs/telegram.mddoc5,107 bytesdocs/termux-config.mddoc3,702 bytesdocs/vps-setup.mddoc2,271 bytesdocs/web-ui-hero.jpgasset444,927 bytesextensions/brave-search/index.tsruns3,834 bytesextensions/email/index.tsruns31,697 bytesextensions/lib/auto-memory-delta.tsruns1,813 bytesextensions/lib/auto-memory-model.tsruns3,713 bytesextensions/lib/auto-memory-status.tsruns7,669 bytesextensions/lib/brain-bootstrap-schema.tsruns5,072 bytesextensions/lib/brain-bootstrap-state.tsruns3,479 bytesextensions/lib/brain-migration.tsruns10,906 bytesextensions/lib/brain-store.tsruns23,755 bytesextensions/lib/brain-tool.tsruns21,840 bytesextensions/lib/file-lock.tsruns6,065 bytesextensions/lib/lease-lock.tsruns8,898 bytesextensions/lib/memory-settings.tsruns9,819 bytesextensions/lib/mod.tsruns2,185 bytesextensions/lib/provider-usage.tsruns11,432 bytesextensions/lib/transient-blocklist.tsruns1,255 bytesextensions/lib/vault-lib.tsruns2,656 bytesextensions/lib/vault-search-lib.tsruns16,062 bytesextensions/memory-viewer/index.tsruns18,079 bytesextensions/review/.gitignoreasset14 bytesextensions/review/command.test.tsruns1,564 bytesextensions/review/files.test.tsruns2,470 bytesextensions/review/files.tsruns3,541 bytesextensions/review/format.test.tsruns4,627 bytesextensions/review/format.tsruns1,175 bytesextensions/review/git-tracker.tsruns2,157 bytesextensions/review/index.tsruns10,446 bytesextensions/review/package-lock.jsonasset9,177 bytesextensions/review/package.jsonruns161 bytesextensions/review/server.test.tsruns14,789 bytesextensions/review/server.tsruns11,254 bytesextensions/review/tui.test.tsruns13,197 bytesextensions/review/tui.tsruns26,793 bytesextensions/review/web.test.tsruns13,687 bytesextensions/review/web/css/review.cssasset19,997 bytesextensions/review/web/index.htmlasset7,580 bytesextensions/review/web/js/review.jsruns8,675 bytesextensions/rho/bootstrap/slash-bootstrap.tsruns8,069 bytesextensions/rho/index.tsruns145,837 bytesextensions/rho/tasks-core.tsruns8,113 bytesextensions/telegram/api.tsruns3,141 bytesextensions/telegram/check-trigger.tsruns4,035 bytesextensions/telegram/index.tsruns20,203 bytesextensions/telegram/jobs.tsruns4,666 bytesextensions/telegram/lib.tsruns7,330 bytesextensions/telegram/log.tsruns2,297 bytesextensions/telegram/operator-config.tsruns1,609 bytesextensions/telegram/outbound.tsruns3,800 bytesextensions/telegram/pending-approvals.tsruns5,373 bytesextensions/telegram/poll-leadership.tsruns3,085 bytesextensions/telegram/router.tsruns6,037 bytesextensions/telegram/rpc.tsruns17,917 bytesextensions/telegram/session-map.tsruns3,316 bytesextensions/telegram/slash-contract.tsruns6,751 bytesextensions/telegram/status.tsruns3,069 bytesextensions/telegram/stt.tsruns5,149 bytesextensions/telegram/worker-lock.tsruns2,961 bytesextensions/telegram/worker-runtime.tsruns66,984 bytesextensions/telegram/worker.tsruns4,407 bytesextensions/usage-bars/index.tsruns6,974 bytesextensions/vault-search/index.tsruns4,197 bytesextensions/x-search/index.tsruns8,461 bytesfeatures/brain-bootstrap.featureasset2,495 bytesfeatures/iphone-termius-support.featureasset2,403 bytesfeatures/rho-login.featureasset5,519 bytesfeatures/rho-run-command.featureasset6,124 bytesfeatures/session-digest-tool.featureasset796 bytesfeatures/smart-heartbeat-routing.featureasset6,264 bytesfeatures/tasks-command.featureasset7,050 bytesfeatures/tasks-overlay.featureasset2,365 bytesfeatures/vault-browse-overlay.featureasset1,942 bytesfeatures/x-posting-extension.featureasset2,498 bytesflake.lockasset1,494 bytesflake.nixasset4,224 bytesinstall.shruns10,393 bytesmobile/rho-android/.gitignoreasset74 bytesmobile/rho-android/android/.gitignoreasset1,824 bytesmobile/rho-android/android/app/.gitignoreasset26 bytesmobile/rho-android/android/app/build.gradleasset4,512 bytesmobile/rho-android/android/app/capacitor.build.gradleasset485 bytesmobile/rho-android/android/app/proguard-rules.proasset751 bytesmobile/rho-android/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.javaasset774 bytesmobile/rho-android/android/app/src/main/AndroidManifest.xmlasset2,754 bytesmobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/LiveModeContextStore.javaasset3,968 bytesmobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/LiveModePlugin.javaasset7,680 bytesmobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/LiveModeService.javaasset9,952 bytesmobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/MainActivity.javaasset3,032 bytesmobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/RhoNotificationChannel.javaasset1,500 bytesmobile/rho-android/android/app/src/main/res/drawable-land-hdpi/splash.pngasset7,705 bytesmobile/rho-android/android/app/src/main/res/drawable-land-mdpi/splash.pngasset4,040 bytesmobile/rho-android/android/app/src/main/res/drawable-land-xhdpi/splash.pngasset9,251 bytesmobile/rho-android/android/app/src/main/res/drawable-land-xxhdpi/splash.pngasset13,984 bytesmobile/rho-android/android/app/src/main/res/drawable-land-xxxhdpi/splash.pngasset17,683 bytesmobile/rho-android/android/app/src/main/res/drawable-port-hdpi/splash.pngasset7,934 bytesmobile/rho-android/android/app/src/main/res/drawable-port-mdpi/splash.pngasset4,096 bytesmobile/rho-android/android/app/src/main/res/drawable-port-xhdpi/splash.pngasset9,875 bytesmobile/rho-android/android/app/src/main/res/drawable-port-xxhdpi/splash.pngasset13,346 bytesmobile/rho-android/android/app/src/main/res/drawable-port-xxxhdpi/splash.pngasset17,489 bytesmobile/rho-android/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xmlasset1,880 bytesmobile/rho-android/android/app/src/main/res/drawable/ic_launcher_background.xmlasset5,606 bytesmobile/rho-android/android/app/src/main/res/drawable/splash.pngasset4,040 bytesmobile/rho-android/android/app/src/main/res/layout/activity_main.xmlasset535 bytesmobile/rho-android/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xmlasset265 bytesmobile/rho-android/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xmlasset265 bytesmobile/rho-android/android/app/src/main/res/mipmap-hdpi/ic_launcher.pngasset1,292 bytesmobile/rho-android/android/app/src/main/res/mipmap-hdpi/ic_launcher_foreground.pngasset3,053 bytesmobile/rho-android/android/app/src/main/res/mipmap-hdpi/ic_launcher_round.pngasset1,292 bytesmobile/rho-android/android/app/src/main/res/mipmap-mdpi/ic_launcher.pngasset871 bytesmobile/rho-android/android/app/src/main/res/mipmap-mdpi/ic_launcher_foreground.pngasset1,901 bytesmobile/rho-android/android/app/src/main/res/mipmap-mdpi/ic_launcher_round.pngasset871 bytesmobile/rho-android/android/app/src/main/res/mipmap-xhdpi/ic_launcher.pngasset1,708 bytesmobile/rho-android/android/app/src/main/res/mipmap-xhdpi/ic_launcher_foreground.pngasset4,226 bytesmobile/rho-android/android/app/src/main/res/mipmap-xhdpi/ic_launcher_round.pngasset1,708 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxhdpi/ic_launcher.pngasset2,672 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_foreground.pngasset6,846 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.pngasset2,672 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher.pngasset3,734 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_foreground.pngasset9,498 bytesmobile/rho-android/android/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.pngasset3,734 bytesmobile/rho-android/android/app/src/main/res/values/ic_launcher_background.xmlasset120 bytesmobile/rho-android/android/app/src/main/res/values/strings.xmlasset288 bytesmobile/rho-android/android/app/src/main/res/values/styles.xmlasset823 bytesmobile/rho-android/android/app/src/main/res/xml/file_paths.xmlasset213 bytesmobile/rho-android/android/app/src/main/res/xml/network_security_config.xmlasset293 bytesmobile/rho-android/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.javaasset402 bytesmobile/rho-android/android/build.gradleasset579 bytesmobile/rho-android/android/capacitor.settings.gradleasset516 bytesmobile/rho-android/android/gradle.propertiesasset987 bytesmobile/rho-android/android/gradle/wrapper/gradle-wrapper.jarasset63,375 bytesmobile/rho-android/android/gradle/wrapper/gradle-wrapper.propertiesasset252 bytesmobile/rho-android/android/gradlewruns8,527 bytesmobile/rho-android/android/gradlew.batruns2,868 bytesmobile/rho-android/android/settings.gradleasset208 bytesmobile/rho-android/android/variables.gradleasset496 bytesmobile/rho-android/capacitor.config.tsruns321 bytesmobile/rho-android/fastlane/metadata/android/contact_email.txtdoc20 bytesmobile/rho-android/fastlane/metadata/android/contact_website.txtdoc35 bytesmobile/rho-android/fastlane/metadata/android/en-US/changelogs/default.txtdoc135 bytesmobile/rho-android/fastlane/metadata/android/en-US/full_description.txtdoc750 bytesmobile/rho-android/fastlane/metadata/android/en-US/short_description.txtdoc66 bytesmobile/rho-android/fastlane/metadata/android/en-US/title.txtdoc4 bytesmobile/rho-android/fastlane/metadata/android/privacy_url.txtdoc80 bytesmobile/rho-android/fastlane/screenshots/README.mddoc1,140 bytesmobile/rho-android/jest.config.jsruns428 bytesmobile/rho-android/package-lock.jsonasset204,034 bytesmobile/rho-android/package.jsonruns803 bytesmobile/rho-android/src/app-lifecycle.tsruns4,397 bytesmobile/rho-android/src/connection-coordinator.tsruns4,703 bytesmobile/rho-android/src/http-policy.tsruns2,586 bytesmobile/rho-android/src/index.tsruns12,918 bytesmobile/rho-android/src/live-mode-controller.tsruns9,093 bytesmobile/rho-android/src/mapConnectionErrorToMessage.tsruns734 bytesmobile/rho-android/src/models/profile.tsruns946 bytesmobile/rho-android/src/replay-resume.tsruns6,389 bytesmobile/rho-android/src/session-monitor.tsruns2,889 bytesmobile/rho-android/src/storage/profile-repository.tsruns3,659 bytesmobile/rho-android/src/storage/secure-token-store.tsruns2,327 bytesmobile/rho-android/tests/android-strings.test.tsruns509 bytesmobile/rho-android/tests/app-lifecycle.test.tsruns10,811 bytesmobile/rho-android/tests/capacitor-config.test.tsruns162 bytesmobile/rho-android/tests/connection-coordinator.test.tsruns7,951 bytesmobile/rho-android/tests/http-policy.test.tsruns2,582 bytesmobile/rho-android/tests/live-mode-controller.test.tsruns5,913 bytesmobile/rho-android/tests/mapConnectionErrorToMessage.test.tsruns1,640 bytesmobile/rho-android/tests/profile-validation.test.tsruns1,501 bytesmobile/rho-android/tests/replay-resume.test.tsruns3,446 bytesmobile/rho-android/tests/session-monitor.test.tsruns3,844 bytesmobile/rho-android/tests/storage.test.tsruns4,631 bytesmobile/rho-android/tsconfig.jsonasset281 bytesmobile/rho-android/www/css/profile-picker.cssasset6,147 bytesmobile/rho-android/www/css/rho-web-style.cssasset66,842 bytesmobile/rho-android/www/index.htmlasset4,520 bytesmobile/rho-android/www/js/app-lifecycle.jsruns3,917 bytesmobile/rho-android/www/js/connection-coordinator.jsruns4,834 bytesmobile/rho-android/www/js/http-policy.jsruns2,173 bytesmobile/rho-android/www/js/index.jsruns12,001 bytesmobile/rho-android/www/js/live-mode-controller.jsruns8,241 bytesmobile/rho-android/www/js/mapConnectionErrorToMessage.jsruns774 bytesmobile/rho-android/www/js/models/profile.jsruns812 bytesmobile/rho-android/www/js/replay-resume.jsruns6,211 bytesmobile/rho-android/www/js/session-monitor.jsruns2,999 bytesmobile/rho-android/www/js/storage/profile-repository.jsruns3,764 bytesmobile/rho-android/www/js/storage/secure-token-store.jsruns2,167 bytespackage-lock.jsonasset118,130 bytespackage.jsonruns2,692 bytesplatforms/android/extensions/tasker.tsruns28,208 bytesplatforms/android/scripts/bin/sttruns492 bytesplatforms/android/scripts/bin/stt-sendruns559 bytesplatforms/linux/setup.shruns2,633 bytesplatforms/macos/setup.shruns1,313 bytespostinstruns1,292 bytesralph-chat-fixes.ymlasset2,053 bytesralph-chat-ux.ymlasset4,410 bytesralph-polish.ymlasset3,639 bytesralph-web-ui.ymlasset5,286 bytesralph.ymlasset14,496 bytesscripts/bench.shruns3,280 bytesscripts/check-asset-size.shruns2,125 bytesscripts/check-line-limit.shruns813 bytesscripts/perf-summary.shruns2,040 bytesscripts/pre-commit.shruns793 bytesscripts/telegram-smoke.tsruns1,075 bytesspecs/pi-native-extensions-execution-plan.mddoc12,972 bytestasker/Rho.prj.xmlasset37,557 bytestemplates/init.tomlasset6,537 bytestemplates/packages.tomlasset730 bytestests/e2e/Dockerfileruns1,367 bytestests/e2e/Dockerfile.npmasset1,336 bytestests/e2e/Dockerfile.regressionsasset1,410 bytestests/e2e/Dockerfile.start-bugasset1,105 bytestests/e2e/run.shruns2,200 bytestests/e2e/test-e2e.shruns12,585 bytestests/e2e/test-npm-install.shruns14,432 bytestests/e2e/test-regressions.shruns8,229 bytestests/e2e/test-start-bug.shruns3,142 bytestests/generate-synthetic-brain.tsruns9,613 bytestests/parity-checklist.mddoc4,452 bytestests/playwriter/web-multi-session-gates.tsruns28,661 bytestests/test-android-release-workflow.tsruns1,726 bytestests/test-android-store-readiness.tsruns3,472 bytestests/test-auto-memory-delta.tsruns3,048 bytestests/test-auto-memory-model.tsruns6,419 bytestests/test-bootstrap-command.tsruns3,170 bytestests/test-bootstrap-slash.tsruns5,676 bytestests/test-brain-bootstrap-schema.tsruns3,196 bytestests/test-brain-bootstrap-state.tsruns2,854 bytestests/test-brain-migration.tsruns22,648 bytestests/test-brain-prompt.tsruns14,454 bytestests/test-brain-store.tsruns20,933 bytestests/test-brain-tool.tsruns22,458 bytestests/test-cli.tsruns6,168 bytestests/test-config.tsruns11,022 bytestests/test-daemon.tsruns15,615 bytestests/test-doctor.tsruns15,703 bytestests/test-file-lock.tsruns9,798 bytestests/test-init.tsruns11,757 bytestests/test-iphone-docs.shruns2,001 bytestests/test-lease-lock.tsruns4,134 bytestests/test-memory-consolidate.shruns10,827 bytestests/test-memory-settings.tsruns6,194 bytestests/test-mobile-parity-smoke.tsruns12,411 bytestests/test-nix-android-dev-shell.tsruns2,112 bytestests/test-one-skill-system.tsruns4,375 bytestests/test-registry.tsruns5,787 bytestests/test-regressions.tsruns10,902 bytestests/test-review-deferred-flow.tsruns7,196 bytestests/test-review-panel.tsruns5,530 bytestests/test-review-store.tsruns5,487 bytestests/test-rho-login.shruns1,545 bytestests/test-rpc-slash-notify-race.tsruns8,509 bytestests/test-slash-contract-parity.tsruns3,952 bytestests/test-sync.tsruns21,614 bytestests/test-tasks.tsruns18,603 bytestests/test-telegram-stt.tsruns4,232 bytestests/test-telegram-worker-lock.tsruns3,949 bytestests/test-telegram-worker-runtime.tsruns65,541 bytestests/test-telegram.tsruns68,716 bytestests/test-templates.tsruns7,483 bytestests/test-terminal-manager.tsruns6,078 bytestests/test-termux-install.tsruns2,073 bytestests/test-tmux-config.shruns2,048 bytestests/test-vault-search.tsruns2,910 bytestests/test-vault.tsruns25,008 bytestests/test-web-chat-init-no-marked.tsruns3,295 bytestests/test-web-chat-reconnect.tsruns20,054 bytestests/test-web-chat-restore-persistence.tsruns11,458 bytestests/test-web-chat-session-ordering.tsruns10,171 bytestests/test-web-chat-session-state.tsruns10,824 bytestests/test-web-chat-slash.tsruns5,311 bytestests/test-web-chat-ws-routing.tsruns13,139 bytestests/test-web-config-provider-usage.tsruns4,830 bytestests/test-web-line-limit.tsruns1,646 bytestests/test-web-mobile-auth-gate.tsruns5,741 bytestests/test-web-mobile-auth.tsruns8,793 bytestests/test-web-mobile-live-mode-bridge.tsruns7,969 bytestests/test-web-provider-usage.tsruns4,869 bytestests/test-web-rpc-health-watchdog.tsruns3,587 bytestests/test-web-rpc-live-mode-lease.tsruns6,058 bytestests/test-web-rpc-orphan-config.tsruns10,360 bytestests/test-web-rpc-orphan-smoke.tsruns7,611 bytestests/test-web-rpc-reconnect-smoke.tsruns10,994 bytestests/test-web-rpc-reliability.tsruns4,821 bytestests/test-web-rpc-sessions-api.tsruns2,593 bytestests/test-web-session-reader-api.tsruns2,566 bytestests/test-web-session-usage.tsruns8,347 bytestests/test-web-terminal-reconnect.tsruns5,440 bytestests/test-web-terminal-routes.tsruns3,263 bytestests/test-web-terminal-touch.tsruns4,118 bytestests/test-web-vendor-assets.tsruns4,651 bytestmp/playwriter-screenshot-1770676991487-l3yq.jpgasset10,206 bytestmp/playwriter-screenshot-1770681994229-oi3f.jpgasset69,313 bytestmp/playwriter-screenshot-1770682003241-x2zc.jpgasset33,390 bytestmp/playwriter-screenshot-1770682077622-mryx.jpgasset36,232 bytesweb/config.tsruns5,409 bytesweb/dev.tsruns580 bytesweb/file-watcher.tsruns3,393 bytesweb/git-context-store.tsruns5,136 bytesweb/public/css/review-panel.cssasset6,504 bytesweb/public/css/style.cssasset71,124 bytesweb/public/css/terminal-drawer.cssasset4,709 bytesweb/public/favicon.svgasset268 bytesweb/public/icon-192.pngasset543 bytesweb/public/icon-512.pngasset1,876 bytesweb/public/index.htmlasset85,591 bytesweb/public/js/app.jsruns12,166 bytesweb/public/js/chat.jsruns177 bytesweb/public/js/chat/assistant-turns.jsruns6,440 bytesweb/public/js/chat/chat-dialog-and-focus.jsruns2,924 bytesweb/public/js/chat/chat-git-context-picker.jsruns6,750 bytesweb/public/js/chat/chat-input-and-rpc-send.jsruns7,141 bytesweb/public/js/chat/chat-model-and-extension-ui.jsruns11,200 bytesweb/public/js/chat/chat-reactive-props.jsruns8,936 bytesweb/public/js/chat/chat-rpc-event-routing.jsruns13,159 bytesweb/public/js/chat/chat-session-actions.jsruns12,482 bytesweb/public/js/chat/chat-session-ui.jsruns13,792 bytesweb/public/js/chat/chat-slash-and-stats.jsruns11,793 bytesweb/public/js/chat/chat-streaming-parts.jsruns13,438 bytesweb/public/js/chat/chat-ws-rpc.jsruns6,932 bytesweb/public/js/chat/constants-and-primitives.jsruns10,377 bytesweb/public/js/chat/index.jsruns5,498 bytesweb/public/js/chat/mobile-live-mode-bridge.jsruns4,614 bytesweb/public/js/chat/model-thinking-and-toast.jsruns2,022 bytesweb/public/js/chat/rendering-and-usage.jsruns12,115 bytesweb/public/js/chat/rpc-health-watchdog.jsruns1,708 bytesweb/public/js/chat/rpc-reconnect-runtime.jsruns6,689 bytesweb/public/js/chat/rpc-session-routing.jsruns5,411 bytesweb/public/js/chat/session-list-ordering.jsruns3,597 bytesweb/public/js/chat/session-restore-persistence.jsruns11,839 bytesweb/public/js/chat/session-ui-state.jsruns5,699 bytesweb/public/js/chat/tool-semantics.jsruns11,695 bytesweb/public/js/config.jsruns7,271 bytesweb/public/js/memory.jsruns13,200 bytesweb/public/js/pull-to-refresh.jsruns4,842 bytesweb/public/js/review-panel.jsruns9,629 bytesweb/public/js/slash-contract.jsruns6,033 bytesweb/public/js/terminal-core.jsruns13,917 bytesweb/public/js/terminal-session-store.jsruns788 bytesweb/public/js/terminal-touch.jsruns1,832 bytesweb/public/js/vault.jsruns3,905 bytesweb/public/manifest.jsonasset604 bytesweb/public/review/css/review.cssasset18,859 bytesweb/public/review/index.htmlasset10,406 bytesweb/public/review/js/review.jsruns15,101 bytesweb/public/sw.jsruns1,117 bytesweb/review-store.tsruns12,093 bytesweb/rpc-live-mode-lease.tsruns2,771 bytesweb/rpc-manager.tsruns8,588 bytesweb/rpc-reliability.tsruns8,073 bytesweb/server-auto-memory-routes.tsruns1,579 bytesweb/server-config-sessions-routes.tsruns6,394 bytesweb/server-core.tsruns12,574 bytesweb/server-git-context-routes.tsruns1,692 bytesweb/server-git-routes.tsruns12,507 bytesweb/server-mobile-auth-middleware.tsruns1,254 bytesweb/server-mobile-auth-routes.tsruns3,901 bytesweb/server-mobile-auth-state.tsruns458 bytesweb/server-review-routes.tsruns9,623 bytesweb/server-rpc-live-mode-routes.tsruns2,114 bytesweb/server-rpc-ws-routes.tsruns4,779 bytesweb/server-static-routes.tsruns4,207 bytesweb/server-tasks-memory-routes.tsruns10,528 bytesweb/server-terminal-routes.tsruns6,461 bytesweb/server-ui-events.tsruns756 bytesweb/server-vault-routes.tsruns7,708 bytesweb/server-vendor-routes.tsruns3,022 bytesweb/server.tsruns713 bytesweb/session-reader-api.tsruns8,371 bytesweb/session-reader-io.tsruns3,915 bytesweb/session-reader-parse.tsruns7,478 bytesweb/session-reader-types.tsruns2,343 bytesweb/session-reader.tsruns282 bytesweb/task-api.tsruns4,011 bytesweb/terminal-manager.tsruns11,841 bytes
Read SKILL.md
# Install Rho
Rho is a persistent AI agent framework. It runs in tmux, checks in on a heartbeat, accumulates memory in a single brain.jsonl file, and manages a knowledge vault. This skill installs it from scratch.
**Prerequisites:** A coding agent that can run shell commands. That's it.
**What gets installed:**
- System deps (Node.js 18+, npm, tmux, git)
- [pi coding agent](https://github.com/badlogic/pi-mono) (the runtime rho extends)
- [rho](https://github.com/mikeyobrien/rho) (the agent framework)
- Config files in `~/.rho/` (init.toml, packages.toml, brain.jsonl)
**Time:** ~5 minutes on a decent connection.
View the complete source on GitHubclipboard
When your agent uses it
Read or write the system clipboard. Use when copying/pasting text, transferring data between apps, or accessing clipboard contents.
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
94 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Read clipboard
- Write to clipboard
Files
SKILL.mdcore409 bytesSKILL.mdcore409 bytesSKILL.mdcore409 bytes
Read SKILL.md
# Clipboard Operations
## Read clipboard
```bash
termux-clipboard-get
```
## Write to clipboard
```bash
termux-clipboard-set "text to copy"
# or pipe:
echo "text" | termux-clipboard-set
```
View the complete source on GitHubcontacts
When your agent uses it
Access phone contacts and call log. Use for looking up contact info or checking recent calls.
What it loads into context
Frontmatter
24 tokensAlways available to the agent
SKILL.md
296 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- List all contacts
- Call log
- Make a phone call
- Phone info
Files
SKILL.mdcore1,015 bytesSKILL.mdcore1,015 bytesSKILL.mdcore1,015 bytesSKILL.mdcore1,015 bytesSKILL.mdcore1,015 bytes
Read SKILL.md
# Contacts & Calls
## List all contacts
```bash
termux-contact-list
```
Output:
```json
[
{
"name": "John Doe",
"number": "+1234567890"
}View the complete source on GitHubdevice
When your agent uses it
Device controls — vibration, torch, volume, battery status, toast messages. Use for haptic feedback, flashlight, or quick status checks.
What it loads into context
Frontmatter
34 tokensAlways available to the agent
SKILL.md
422 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Toast (quick popup)
- Vibration
- Flashlight
- Volume
- Battery Status
- Brightness
- WiFi Info
- Sensor Data
Files
SKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytesSKILL.mdcore1,602 bytes
Read SKILL.md
# Device Controls
## Toast (quick popup)
```bash
termux-toast "Message"
termux-toast -s "Short message" # shorter duration
termux-toast -g top "Top message" # position: top, middle, bottom
termux-toast -b black -c white "Styled" # background & text color
```
## Vibration
```bash
termux-vibrate # 1 second default
termux-vibrate -d 500 # 500msView the complete source on GitHubdialog
When your agent uses it
Show interactive dialogs for user input — text, confirmations, choices, date/time pickers. Use when you need user input beyond chat.
What it loads into context
Frontmatter
33 tokensAlways available to the agent
SKILL.md
421 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Text input
- Confirmation (yes/no)
- Radio buttons (pick one)
- Checkboxes (pick multiple)
- Spinner dropdown
- Bottom sheet
- Counter (number picker)
- Date picker
- Time picker
- Speech input
- Output format
Files
SKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytesSKILL.mdcore1,454 bytes
Read SKILL.md
# Interactive Dialogs
## Text input
```bash
termux-dialog text -t "Title" -i "Hint text"
termux-dialog text -m # multiline
termux-dialog text -p # password (hidden)
termux-dialog text -n # numbers only
```
## Confirmation (yes/no)
```bash
termux-dialog confirm -t "Are you sure?"
```View the complete source on GitHublocation
When your agent uses it
Get device location via GPS or network. Use for location-aware actions, finding nearby places, or logging position.
What it loads into context
Frontmatter
28 tokensAlways available to the agent
SKILL.md
236 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Get current location
- Request single update (default)
- Continuous updates
- Output format
Files
SKILL.mdcore900 bytesSKILL.mdcore900 bytesSKILL.mdcore900 bytesSKILL.mdcore900 bytes
Read SKILL.md
# Location
## Get current location
```bash
termux-location # default (GPS if available)
termux-location -p gps # GPS only (more accurate, slower)
termux-location -p network # Network only (faster, less accurate)
termux-location -p passive # Last known location (instant)
```
## Request single update (default)
```bash
termux-location -r once
```View the complete source on GitHubmedia
When your agent uses it
Play audio files, record from microphone, take photos. Use for media playback, voice recording, or camera capture.
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
320 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Audio Playback
- Microphone Recording
- Camera Photo
- Camera info
Files
SKILL.mdcore1,144 bytesSKILL.mdcore1,144 bytesSKILL.mdcore1,144 bytesSKILL.mdcore1,144 bytesSKILL.mdcore1,144 bytes
Read SKILL.md
# Media Operations
## Audio Playback
```bash
termux-media-player play /path/to/file.mp3
termux-media-player pause
termux-media-player play # resume
termux-media-player stop
termux-media-player info # current status
```
## Microphone Recording
View the complete source on GitHubnotification
When your agent uses it
Show system notifications with optional buttons, sounds, and actions. Use for alerts, reminders, or persistent status messages.
What it loads into context
Frontmatter
29 tokensAlways available to the agent
SKILL.md
333 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Basic notification
- With ID (for updating/removing)
- Options
- With action buttons
- List active notifications
Files
SKILL.mdcore1,234 bytesSKILL.mdcore1,234 bytesSKILL.mdcore1,234 bytesSKILL.mdcore1,234 bytesSKILL.mdcore1,234 bytes
Read SKILL.md
# System Notifications
## Basic notification
```bash
termux-notification -t "Title" -c "Content message"
```
## With ID (for updating/removing)
```bash
termux-notification --id mynotif -t "Title" -c "Message"
termux-notification-remove mynotif
```
## OptionsView the complete source on GitHubopen-url
When your agent uses it
Open URLs and launch apps on Android. Use for opening links in a browser, launching specific apps, or viewing files.
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
495 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Open a URL in default browser
- Open a URL with am start (more control)
- Open a file with default handler
- Launch an app by package name
- Common app packages
- Launch app with specific intent
- List installed packages
- Notes
Files
SKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytesSKILL.mdcore1,917 bytes
Read SKILL.md
# Open URLs and Launch Apps
## Open a URL in default browser
```bash
termux-open-url https://example.com
```
## Open a URL with am start (more control)
```bash
am start -a android.intent.action.VIEW -d "https://example.com"
```
## Open a file with default handler
```bashView the complete source on GitHubsms
When your agent uses it
Read and send SMS messages. Use for checking texts, 2FA codes, or sending SMS alerts.
What it loads into context
Frontmatter
27 tokensAlways available to the agent
SKILL.md
296 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Read recent messages
- Filter by sender
- Get conversations list
- Send SMS
- Output format (list)
- Message types
Files
SKILL.mdcore999 bytesSKILL.mdcore999 bytesSKILL.mdcore999 bytesSKILL.mdcore999 bytesSKILL.mdcore999 bytes
Read SKILL.md
# SMS Operations
## Read recent messages
```bash
termux-sms-list # last 10 messages
termux-sms-list -l 5 # last 5 messages
termux-sms-list -t inbox # inbox only
termux-sms-list -t sent # sent only
```
## Filter by sender
```bash
termux-sms-list -f "+1234567890" -l 5 # from specific number
```View the complete source on GitHubstt
When your agent uses it
Speech-to-text — transcribe voice to text using device microphone. Use for voice commands, dictation, or hands-free input.
What it loads into context
Frontmatter
33 tokensAlways available to the agent
SKILL.md
137 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Basic usage
- Output format
- Notes
Files
SKILL.mdcore597 bytesSKILL.mdcore597 bytes
Read SKILL.md
# Speech-to-Text
## Basic usage
```bash
termux-speech-to-text
```
Opens a speech recognition dialog. Returns transcribed text as JSON when user stops speaking.
## Output format
```json
{"result": "the spoken text here"}
```
View the complete source on GitHubtasker-xml
When your agent uses it
Create Tasker profiles and tasks via XML for Android automation. Use when adding new Tasker functionality, creating Intent Received handlers, or building automation that integrates with the rho.tasker extension.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
3,812 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Output Location
- File Suffixes
- Import Instructions
- XML Structure
- Event Codes (for Profile triggers)
- Action Codes (for Task steps)
- Action Examples
- Rho Integration Pattern
- Result File Format
- Tips
Files
SKILL.mdcore12,220 bytes
Read SKILL.md
# Tasker XML Creation
Create importable Tasker profiles and tasks via XML files.
## Output Location
Write XML files to `/storage/emulated/0/Download/` for easy import:
```
/storage/emulated/0/Download/MyProfile.prf.xml
```
## File Suffixes
- `.prf.xml` - Profile with linked task(s)View the complete source on GitHubtts
When your agent uses it
Text-to-speech — make the device speak text aloud. Use for voice announcements, reading content aloud, or accessibility.
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
206 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Speak text
- Options
- List available engines
Files
SKILL.mdcore643 bytesSKILL.mdcore643 bytesSKILL.mdcore643 bytesSKILL.mdcore643 bytes
Read SKILL.md
# Text-to-Speech
## Speak text
```bash
termux-tts-speak "Hello, this is a test"
# or pipe:
echo "Hello world" | termux-tts-speak
```
## Options
```bash
termux-tts-speak -l en-US "Text" # language
termux-tts-speak -p 1.2 "Text" # pitch (0.5 - 2.0)
termux-tts-speak -r 0.8 "Text" # rate (0.5 - 2.0, slower/faster)View the complete source on GitHubclipboard
When your agent uses it
Read or write the Linux clipboard. Use when copying/pasting text, transferring data between apps, or accessing clipboard contents.
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
364 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- X11 (xclip)
- X11 (xsel) -- alternative
- Wayland (wl-clipboard)
- Detect display server
Files
SKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytesSKILL.mdcore1,330 bytes
Read SKILL.md
# Clipboard Operations
## X11 (xclip)
### Install
```bash
# Debian/Ubuntu
sudo apt install xclip
# Arch
sudo pacman -S xclip
# Fedora
sudo dnf install xclipView the complete source on GitHubnotification
When your agent uses it
Show Linux desktop notifications with title, body, urgency, and icons. Use for alerts, reminders, or status updates.
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
386 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Install
- Basic notification
- With urgency
- With icon
- With expiration (milliseconds)
- With app name and category
- Replaceable notification (update in place)
Files
SKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytesSKILL.mdcore1,451 bytes
Read SKILL.md
# Desktop Notifications
Requires `notify-send` from the `libnotify` package.
## Install
```bash
# Debian/Ubuntu
sudo apt install libnotify-bin
# Arch
sudo pacman -S libnotify
# Fedora
sudo dnf install libnotifyView the complete source on GitHubopen-url
When your agent uses it
Open URLs, files, and directories on Linux using default applications. Use for launching browsers, opening documents, or viewing files.
What it loads into context
Frontmatter
32 tokensAlways available to the agent
SKILL.md
278 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Open a URL in default browser
- Open a file with default app
- Open a directory in file manager
- Check/set default applications
- Open with a specific app
Files
SKILL.mdcore1,188 bytesSKILL.mdcore1,188 bytesSKILL.mdcore1,188 bytesSKILL.mdcore1,188 bytesSKILL.mdcore1,188 bytesSKILL.mdcore1,188 bytes
Read SKILL.md
# Open URLs and Files
Uses `xdg-open` which respects default application settings from the desktop environment.
## Open a URL in default browser
```bash
xdg-open https://example.com
```
## Open a file with default app
```bash
xdg-open document.pdf
xdg-open image.png
xdg-open spreadsheet.csvView the complete source on GitHubtts
When your agent uses it
Text-to-speech on Linux -- make the device speak text aloud. Use for voice announcements, reading content aloud, or accessibility.
What it loads into context
Frontmatter
33 tokensAlways available to the agent
SKILL.md
475 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- espeak / espeak-ng
- speech-dispatcher (spd-say) -- alternative
- piper -- neural TTS (higher quality)
Files
SKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytesSKILL.mdcore1,618 bytes
Read SKILL.md
# Text-to-Speech
## espeak / espeak-ng
### Install
```bash
# Debian/Ubuntu
sudo apt install espeak-ng
# Arch
sudo pacman -S espeak-ng
# Fedora
sudo dnf install espeak-ngView the complete source on GitHubclipboard
When your agent uses it
Read or write the macOS clipboard. Use when copying/pasting text, transferring data between apps, or accessing clipboard contents.
What it loads into context
Frontmatter
31 tokensAlways available to the agent
SKILL.md
120 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Read clipboard
- Write to clipboard
- Copy file contents
- Copy command output
Files
SKILL.mdcore502 bytesSKILL.mdcore502 bytesSKILL.mdcore502 bytesSKILL.mdcore502 bytesSKILL.mdcore502 bytes
Read SKILL.md
# Clipboard Operations
## Read clipboard
```bash
pbpaste
```
## Write to clipboard
```bash
echo "text to copy" | pbcopy
```
## Copy file contents
```bashView the complete source on GitHubnotification
When your agent uses it
Show macOS system notifications with title, body, and optional sound. Use for alerts, reminders, or status updates.
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
317 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Basic notification
- With subtitle
- With sound
- Common sound names
- Richer notifications (optional)
Files
SKILL.mdcore1,184 bytesSKILL.mdcore1,184 bytesSKILL.mdcore1,184 bytesSKILL.mdcore1,184 bytesSKILL.mdcore1,184 bytesSKILL.mdcore1,184 bytes
Read SKILL.md
# System Notifications
## Basic notification
```bash
osascript -e 'display notification "Message body" with title "Title"'
```
## With subtitle
```bash
osascript -e 'display notification "Body" with title "Title" subtitle "Subtitle"'
```
## With sound
```bashView the complete source on GitHubopen-url
When your agent uses it
Open URLs, files, and applications on macOS. Use for launching browsers, opening documents, or starting apps.
What it loads into context
Frontmatter
30 tokensAlways available to the agent
SKILL.md
155 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Open a URL in default browser
- Open a file with default app
- Open with a specific app
- Reveal in Finder
- Open a new Finder window
Files
SKILL.mdcore573 bytesSKILL.mdcore573 bytesSKILL.mdcore573 bytesSKILL.mdcore573 bytesSKILL.mdcore573 bytesSKILL.mdcore573 bytes
Read SKILL.md
# Open URLs and Files
## Open a URL in default browser
```bash
open https://example.com
```
## Open a file with default app
```bash
open document.pdf
open image.png
```
## Open with a specific appView the complete source on GitHubtts
When your agent uses it
Text-to-speech on macOS -- make the device speak text aloud. Use for voice announcements, reading content aloud, or accessibility.
What it loads into context
Frontmatter
34 tokensAlways available to the agent
SKILL.md
203 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Speak text
- Pipe text
- Choose a voice
- List available voices
- Adjust rate (words per minute)
- Save to audio file
Files
SKILL.mdcore706 bytesSKILL.mdcore706 bytesSKILL.mdcore706 bytesSKILL.mdcore706 bytesSKILL.mdcore706 bytesSKILL.mdcore706 bytesSKILL.mdcore706 bytes
Read SKILL.md
# Text-to-Speech
## Speak text
```bash
say "Hello, this is a test"
```
## Pipe text
```bash
echo "Hello world" | say
```
## Choose a voice
```bashView the complete source on GitHubauto-memory
When your agent uses it
Extract durable learnings and preferences from conversations for automatic memory capture.
What it loads into context
Frontmatter
23 tokensAlways available to the agent
SKILL.md
1,837 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Output Format
- Examples
- Troubleshooting
Files
SKILL.mdcore8,157 bytesSKILL.mdcore8,157 bytesSKILL.mdcore8,157 bytes
Read SKILL.md
# Auto-Memory Extraction
## Overview
Extract durable learnings and user preferences from a conversation that will remain useful across future sessions. This runs automatically after each agent turn, using a small/cheap model. Quality over quantity: one precise memory is worth more than five vague ones.
## Parameters
- **conversation** (required): The serialized conversation text to extract from
- **existing_memories** (optional): Already-stored memories to avoid duplicating
## Steps
### 1. Classify Conversation ContentView the complete source on GitHubcode-assist
When your agent uses it
Implement coding tasks with an explore-plan-code workflow and explicit verification gates.
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
5,113 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Mode Behavior
- Important Notes
- Steps
- Desired Outcome
- Examples
- Troubleshooting
- Best Practices
- Artifacts
Files
SKILL.mdcore27,149 bytes
Read SKILL.md
# Code Assist
## Overview
This sop guides the implementation of code tasks using test-driven development principles, following a structured Explore, Plan, Code, Commit workflow. It balances automation with user collaboration while adhering to existing package patterns and prioritizing readability and extensibility. The agent acts as a Technical Implementation Partner and TDD Coach - providing guidance, generating test cases and implementation code that follows existing patterns, avoids over-engineering, and produces idiomatic, modern code in the target language.
## Parameters
- **task_description** (required): A description of the task to be implemented. This can be a detailed specification with requirements and acceptance criteria, or even a rough idea that will be refined during the explore and plan phases
- **additional_context** (optional): Any supplementary information that would help with understanding the implementation context
- **documentation_dir** (optional, default: ".agents/scratchpad/{project_name}"): The directory where planning documents will be stored
- **repo_root** (optional, default: current working directory): The root directory of the repository for code implementation
- **project_name** (optional): Project name for organizing working files. If processing a code task file, will be inferred from the task path. Otherwise, will be generated from the task description with a YYYY-MM-DD date prefix.
- **task_name** (optional): A short, descriptive name for the implementation taskView the complete source on GitHubcode-task-generator
When your agent uses it
Generate structured .code-task.md files from rough descriptions or PDD plans.
What it loads into context
Frontmatter
26 tokensAlways available to the agent
SKILL.md
2,692 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Code Task Format Specification
- Examples
- Troubleshooting
Files
SKILL.mdcore13,371 bytes
Read SKILL.md
# Code Task Generator
## Overview
This sop generates structured code task files from rough descriptions, ideas, or PDD implementation plans. It automatically detects the input type and creates properly formatted code task files following Amazon's code task format specification. For PDD plans, it processes implementation steps one at a time to allow for learning and adaptation between steps.
## Parameters
- **input** (required): Task description, file path, or PDD plan path. Can be a simple sentence, paragraph, detailed explanation, or path to a PDD implementation plan.
- **step_number** (optional): For PDD plans only - specific step to process. If not provided, automatically determines the next uncompleted step from the checklist.
- **output_dir** (optional, default: ".agents/tasks/{project_name}"): Directory where the code task file will be created
- **project_name** (optional): Project name for organizing tasks. If processing a PDD plan, will be inferred from the plan path. Otherwise, will be generated from the description with a YYYY-MM-DD date prefix.
**Constraints for parameter acquisition:**View the complete source on GitHubcodebase-summary
When your agent uses it
Analyze a repository and generate comprehensive architecture and workflow documentation.
What it loads into context
Frontmatter
22 tokensAlways available to the agent
SKILL.md
2,922 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Examples
- Troubleshooting
Files
SKILL.mdcore14,945 bytesSKILL.mdcore14,945 bytes
Read SKILL.md
# Codebase Summary
## Overview
This sop analyzes a codebase and generates comprehensive documentation including structured metadata files that describe the system architecture, components, interfaces, and workflows. It can create targeted documentation files like AGENTS.md (README for AI agents), README.md, CONTRIBUTING.md, or generate a complete documentation ecosystem. The documentation is organized to make it easy for AI assistants to understand the system and help with development tasks.
## Parameters
- **output_dir** (optional, default: ".agents/summary"): Directory where documentation will be stored
- **consolidate** (optional, default: true): Whether to create consolidated documentation files
- **consolidate_targets** (optional, default: "AGENTS.md"): Target files for consolidation, comma-separated (e.g., "AGENTS.md, README.md, CONTRIBUTING.md"). Only used if consolidate is true
- **consolidate_prompt** (optional): Description of how to structure the consolidated content for the target file type (e.g., Reference the AGENTS.md example below for the default "consolidate_prompt"). Only used if consolidate is true
- **check_consistency** (optional, default: true): Whether to check for inconsistencies across documents
- **check_completeness** (optional, default: true): Whether to identify areas lacking sufficient detailView the complete source on GitHubcreate-sop
When your agent uses it
Create a new SOP-style skill as skills/<name>/SKILL.md with kind: sop frontmatter and structured Parameters/Steps sections.
What it loads into context
Frontmatter
39 tokensAlways available to the agent
SKILL.md
621 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Output
- Example
Files
SKILL.mdcore2,487 bytes
Read SKILL.md
# Create SOP Skill
## Overview
Create a new workflow skill where **SOPs are implemented as skills**.
Canonical artifact:
- `skills/<skill-name>/SKILL.md`
A valid SOP skill must include:
- YAML frontmatter with `name`, `description`, and `kind: sop`
- `## Parameters`
- `## Steps`
View the complete source on GitHubeval
When your agent uses it
Plan and run conversational AI agent evaluations with test generation and analysis.
What it loads into context
Frontmatter
22 tokensAlways available to the agent
SKILL.md
8,176 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Examples
- Conversation Flow Management
- Troubleshooting
- Appendix A: Evaluation Plan Template
- Appendix B: Evaluation Report Template
Files
SKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytesSKILL.mdcore38,890 bytes
Read SKILL.md
# EvalKit
## Overview
EvalKit is a conversational evaluation framework for AI agents that guides you through creating robust evaluations using the Strands Evals SDK. Through natural conversation, you can plan evaluations, generate test data, execute evaluations, and analyze results.
## Parameters
- **agent_path** (required): Path to the agent folder to evaluate (e.g., `./chatbot-agent`, `/path/to/my-agent`)
- **evaluation_focus** (optional): Specific aspects to evaluate (e.g., "response quality", "tool calling accuracy")
- **test_case_count** (optional, default: 3): Number of test cases to generate
- **output_format** (optional, default: "jsonl"): Format for test data output
**Constraints for parameter acquisition:**View the complete source on GitHubmemory-consolidate
When your agent uses it
Consolidate brain memory and mine user sessions since the last consolidation checkpoint (sleep-cycle style). Use to reduce noisy prompt injection while preserving durable high-value memories.
What it loads into context
Frontmatter
43 tokensAlways available to the agent
SKILL.md
1,220 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Importance levels (retention)
- Parameters
- Steps
Files
SKILL.mdcore5,295 bytes
Read SKILL.md
# Memory Consolidate
## Overview
Run a "brain sleep cycle":
1. Consolidate existing memory (dedupe, decay, merge, vault relocation)
2. Mine **user** sessions since the last consolidation checkpoint
3. Persist a new checkpoint only after a successful run
Use the `brain` tool for brain changes and the `vault` tool for reference relocation. Never edit `brain.jsonl` directly.
---
## Importance levels (retention)View the complete source on GitHubpdd
When your agent uses it
Transform a rough idea into a detailed design document and implementation plan.
What it loads into context
Frontmatter
23 tokensAlways available to the agent
SKILL.md
3,799 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Examples
- Troubleshooting
Files
SKILL.mdcore19,493 bytes
Read SKILL.md
# Prompt-Driven Development
## Overview
This sop guides you through the process of transforming a rough idea into a detailed design document with an implementation plan and todo list. It follows the Prompt-Driven Development methodology to systematically refine your idea, conduct necessary research, create a comprehensive design, and develop an actionable implementation plan. The process is designed to be iterative, allowing movement between requirements clarification and research as needed.
## Parameters
- **rough_idea** (required): The initial concept or idea you want to develop into a detailed design
- **project_name** (optional): A short, descriptive name for the project. If not provided, will be generated from the rough idea
- **project_dir** (optional, default: ".agents/planning/{project_name}"): The base directory where all project files will be stored
**Constraints for parameter acquisition:**
- You MUST ask for all required parameters upfront in a single prompt rather than one at a timeView the complete source on GitHubpdd-build
When your agent uses it
Execute a completed PDD implementation plan step-by-step with validation gates.
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
2,454 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Examples
- Troubleshooting
Files
SKILL.mdcore10,803 bytes
Read SKILL.md
# PDD Build
## Overview
This SOP takes a completed PDD project (design doc + implementation plan) and executes the implementation plan step-by-step using subagents. Each step is built by a subagent, then verified against user-defined "done" criteria before advancing. The user defines how completion is validated — automated tests, manual testing via tmux, browser validation via Playwriter, visual inspection, or any combination.
## Parameters
- **project_dir** (required): Path to the PDD project directory (e.g., `.agents/planning/2026-02-10-review-extension`)
- **validation_strategy** (required): How the agent should verify each step is done. The user must explain this in detail.
- **start_step** (optional, default: 1): Step number to start from (for resuming interrupted builds)
**Constraints for parameter acquisition:**
- You MUST ask for all required parameters upfront in a single promptView the complete source on GitHubrelease-changelog
When your agent uses it
Keep CHANGELOG.md idiomatic (Keep a Changelog) and cut a tag-based GitHub release that triggers npm publish CI.
What it loads into context
Frontmatter
37 tokensAlways available to the agent
SKILL.md
1,296 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Output
- Troubleshooting
Files
SKILL.mdcore5,424 bytesSKILL.mdcore5,424 bytes
Read SKILL.md
# Release + CHANGELOG Workflow
## Overview
Use this SOP to run a clean release process for rho:
1. maintain an idiomatic `CHANGELOG.md` (Keep a Changelog + SemVer),
2. ensure `package.json` version, git tag, and changelog section match,
3. publish a GitHub Release from changelog notes,
4. let CI publish npm from the release event.
This SOP is designed for the existing workflow in `.github/workflows/publish.yml` (`release.published` trigger).
## ParametersView the complete source on GitHubrho-cloud-email
When your agent uses it
Manage agent email at name@rhobot.dev via the Rhobot Mail API. Use when checking inbox, reading messages, sending email, or managing allowed senders. Requires credentials from rho-cloud-onboard.
What it loads into context
Frontmatter
52 tokensAlways available to the agent
SKILL.md
2,841 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Prerequisites
- Security: Sender Allowlist
- Check Inbox
- Read a Message
- Act on a Message
- Archive a Message
- Send an Email
- Check Outbox
- Typical Workflows
- Error Handling
- Notes
Files
SKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytesSKILL.mdcore10,503 bytes
Read SKILL.md
# Rhobot Mail
Interact with an agent email inbox at `name@rhobot.dev` using the Rhobot Mail REST API. This skill covers inbox polling, reading, replying, sending, and sender allowlist management.
## Prerequisites
- Credentials at `~/.config/rho-cloud/credentials.json` (see `rho-cloud-onboard` skill)
- `curl` and `jq` installed
- The credential file contains `api_key`, `agent_id`, and `email`
You MUST load credentials before any API call:
```bash
[Credential-related source omitted]View the complete source on GitHubrho-cloud-onboard
When your agent uses it
Register an agent email address on Rhobot Mail (name@rhobot.dev). Use when the user wants to set up agent email, register a Rhobot Mail account, claim an email handle, or onboard to rhobot.dev.
What it loads into context
Frontmatter
58 tokensAlways available to the agent
SKILL.md
1,344 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Parameters
- URLs
- Prerequisites
- Steps
- Troubleshooting
Scripts executed separately
scripts/send-test-email.py
Files
SKILL.mdcore5,424 bytesSKILL.mdcore5,424 bytesSKILL.mdcore5,424 bytesSKILL.mdcore5,424 bytesSKILL.mdcore5,424 bytesscripts/send-test-email.pyruns1,567 bytes
Read SKILL.md
# Rhobot Mail Onboarding
Register an agent email address on Rhobot Mail and configure local credentials. The agent gets an inbox at `name@rhobot.dev` that can be polled via API.
## Parameters
- **handle** (required): The desired email local part (e.g. `tau` for `tau@rhobot.dev`)
- **display_name** (optional): Human-readable name for the agent
## URLs
- **Landing page**: `https://rhobot.dev/email`
- **Skill reference**: `https://rhobot.dev/skill.md`
- **API endpoint**: `https://api.rhobot.dev` (all API calls go here)View the complete source on GitHubsession-search
When your agent uses it
Search across pi session JSONL logs (user prompts, tool calls, results). Uses the session-digest tool and ripgrep for fast triage.
What it loads into context
Frontmatter
40 tokensAlways available to the agent
SKILL.md
588 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Where sessions live
- Method A (recommended): generate digests, then search the digests
- Method B: direct grep over raw JSONL (fastest, messiest)
- Common queries
- Guardrails
Files
SKILL.mdcore2,231 bytesSKILL.mdcore2,231 bytesSKILL.mdcore2,231 bytesSKILL.mdcore2,231 bytesSKILL.mdcore2,231 bytesSKILL.mdcore2,231 bytes
Read SKILL.md
# Session Search
Search historical pi sessions stored under `~/.pi/agent/sessions/`.
This skill assumes the **session-digest** helper exists at `~/bin/session-digest`.
## Where sessions live
On this Termux setup, sessions are typically stored in:
- `~/.pi/agent/sessions/--data-data-com.termux-files-home--/*.jsonl`
If you are unsure which directory is active, list the session roots:
View the complete source on GitHubsmall-improvement
When your agent uses it
Run a curiosity-driven explore-and-build loop to ship one useful improvement.
What it loads into context
Frontmatter
25 tokensAlways available to the agent
SKILL.md
3,272 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Overview
- Parameters
- Steps
- Examples
- Troubleshooting
Files
SKILL.mdcore14,728 bytes
Read SKILL.md
# Small Improvement
## Overview
An autonomous exploration and building loop. Search X for what's interesting — new techniques, clever hacks, tools people are shipping, ideas that spark something — then pick one thing and build it into the codebase. The goal is continuous self-improvement: expanding capabilities, learning new patterns, and shipping small real things inspired by what's happening in the world.
This is not a code cleanup tool. It's a curiosity-driven build cycle.
## Parameters
- **codebase_path** (required): Path to the codebase to improve
- **seed** (optional): A URL or topic to start from (e.g., a blog post, product launch, GitHub repo, API docs). When provided, the agent reads and researches this first, then explores adjacent ideas. Replaces the open-ended X trawl with focused research.
- **uber_goal** (optional): A north-star objective that persists across rounds (e.g., "make the TUI feel instant", "bulletproof the RPC layer", "make yourself more capable"). Not a spec — a direction. The agent decides what steps get there.
- **interest** (optional): A loose direction to explore (e.g., "TUI tricks", "agent patterns", "developer tools", "anything")View the complete source on GitHubupdate-pi
When your agent uses it
Update the pi-coding-agent npm package to the latest version. Use when the user wants to update pi, upgrade pi, or get the latest version of the coding agent.
What it loads into context
Frontmatter
46 tokensAlways available to the agent
SKILL.md
71 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
Files
SKILL.mdcore288 bytes
Read SKILL.md
Run `npm update -g @mariozechner/pi-coding-agent` and report the version change.View the complete source on GitHubvault-clean
When your agent uses it
Detect and resolve orphaned notes in the vault. Use during heartbeat maintenance or when vault status shows orphans. Finds notes with no inbound wikilinks and either connects them to the graph or flags them for cleanup.
What it loads into context
Frontmatter
53 tokensAlways available to the agent
SKILL.md
875 tokensWhen the skill is activated
Reference documents
0 tokensLoaded on request
Token counts are estimates. Scripts run separately; they are not counted as reference context.
The playbook
- Step 1: Detect Orphans
- Step 2: Triage Each Orphan
- Step 3: Verify
- Batch Processing
- Common Orphan Patterns
- Guardrails
Files
SKILL.mdcore3,375 bytesSKILL.mdcore3,375 bytes
Read SKILL.md
# Vault Orphan Cleanup
Resolve orphaned notes in `~/.rho/vault/` -- notes that exist but have no inbound `[[wikilinks]]` from any other note.
## Step 1: Detect Orphans
Run the detection script to get the current orphan list:
```bash
TMPDIR="$PREFIX/tmp"
# All note slugs
find ~/.rho/vault -name "*.md" -not -name "_inbox.md" | while read f; do
basename "$f" .mdView the complete source on GitHubSkills included
- install-rho
- clipboard
- contacts
- device
- dialog
- location
- media
- notification
- open-url
- sms
- stt
- tasker-xml
- tts
- clipboard
- notification
- open-url
- tts
- clipboard
- notification
- open-url
- tts
- auto-memory
- code-assist
- code-task-generator
- codebase-summary
- create-sop
- eval
- memory-consolidate
- pdd
- pdd-build
- release-changelog
- rho-cloud-email
- rho-cloud-onboard
- session-search
- small-improvement
- update-pi
- vault-clean
Repository facts
- License
- MIT
- Created
- Feb 3, 2026
- Last pushed
- Oct 1, 2026
- Forks
- 30
- Open issues
- 1
- Project activity
- Active
Before you install
Network or broad shellAutomated signals, not a guarantee
Checked Nov 5, 2026
Not fully analyzed: some files were too long, unreadable or missing. This never lowers the level.
Show 295 notes
SKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzedSKILL.md:1Analysis incomplete: Referenced executable target unavailable; not analyzeddocs/demo.cast:4Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:5Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:6Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:7Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:9Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:389Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:387Analysis incomplete: physical or joined line exceeds character limitdocs/demo.cast:388Analysis incomplete: physical or joined line exceeds character limitdocs/email-demo.cast:2Analysis incomplete: physical or joined line exceeds character limit
- No broad tool permissions
- 50 dangerous shell commandsin 22 files: install.sh:6 clipboard/SKILL.md:13 tts/SKILL.md:13 and 19 more
- 2,804 network referencesin 126 files: mobile/rho-android/package-lock.json:25 package-lock.json:820 extensions/review/package-lock.json:14 and 123 more
- No hidden or obfuscated text
- No instruction overrides
- 285 executable scriptsin 285 files: cli/commands/bootstrap.ts:1 cli/commands/config.ts:1 cli/commands/doctor.ts:1 and 282 more
- 94 references to secretsin 30 files: tests/test-telegram-worker-runtime.ts:988 extensions/brave-search/index.ts:4 extensions/x-search/index.ts:4 and 27 more
- No requests to vote in Hot
Show all 3,233 signals by file
.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md
- Network accessline 317
✓ git 2.47.0 ! Termux:API not found Install from F-Droid: https://f-droid.org/packages/com.termux.api/ - Network accessline 319
Install from F-Droid: https://f-droid.org/packages/com.termux.api/ - Network accessline 395
# Rho Configuration # Edit this file, then run `rho sync` to apply changes. # Docs: https://github.com/mikeyobrien/rho - Network accessline 397
# Docs: https://github.com/mikeyobrien/rho - Access to secretsline 437
[Credential-related source omitted]
.agents/planning/2026-02-08-doom-style-config/idea-honing.md
- Network accessline 212
- **System deps + initial install** → Still needed as a one-liner curl install
.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md
- Network accessline 9
1. MDN Page Visibility API - https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API - Network accessline 10
- https://developer.mozilla.org/en-US/docs/Web/API/Page_Visibility_API - Network accessline 11
2. Chrome Page Lifecycle API - https://developer.chrome.com/docs/web-platform/page-lifecycle-api 3. MDN Web Storage API (localStorage/sessionStorage sync behavior) - Network accessline 12
- https://developer.chrome.com/docs/web-platform/page-lifecycle-api - Network accessline 13
3. MDN Web Storage API (localStorage/sessionStorage sync behavior) - https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API 4. MDN Storage quotas and eviction criteria - Network accessline 14
- https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API - Network accessline 16
- https://developer.mozilla.org/en-US/docs/Web/API/Storage_API/Storage_quotas_and_eviction_criteria
.agents/planning/2026-02-21-rho-capacitor-native-app/design/detailed-design.md
- Access to secretsline 46
[Credential-related source omitted]
.agents/planning/2026-02-21-rho-capacitor-native-app/idea-honing.md
.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md
- Network accessline 185
- Root causes addressed: - Launch button remained disabled after save without an explicit card reselect. - WebView mixed-content block (`https://localhost` shell -> `http://tidepool:3141`). - Network accessline 186
- Launch button remained disabled after save without an explicit card reselect. - WebView mixed-content block (`https://localhost` shell -> `http://tidepool:3141`). - CORS preflight block on `/api/mobile/auth/exchange` from shell origin - Network accessline 187
- WebView mixed-content block (`https://localhost` shell -> `http://tidepool:3141`). - Network accessline 188
- CORS preflight block on `/api/mobile/auth/exchange` from shell origin `http://localhost`. - Network accessline 192
- Added mobile-auth endpoint CORS handling for Capacitor localhost origins. - Taught `SessionMonitor` to ignore cross-host `missing_cookie` false positives. - Verified real-device connect flow to `http://tidepool:3141` remains stable pa - Network accessline 194
- Verified real-device connect flow to `http://tidepool:3141` remains stable past polling interval.
.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-report.md
- Network accessline 61
- Wireless ADB validation on `SM_F966U1` ✅ - `POST /api/mobile/auth/exchange` observed on server with CORS preflight ✅ - Rho web bundle/API/WS traffic loaded from `http://tidepool:3141` ✅ - Network accessline 62
- `POST /api/mobile/auth/exchange` observed on server with CORS preflight ✅ - Rho web bundle/API/WS traffic loaded from `http://tidepool:3141` ✅ - Session remained stable past monitor interval (no forced `missing_cookie` fallback) ✅ - Network accessline 63
- Rho web bundle/API/WS traffic loaded from `http://tidepool:3141` ✅
.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md
- Network accessline 80
- https://capacitorjs.com/docs/config - Network accessline 81
- https://capacitorjs.com/docs/guides/live-reload - Network accessline 82
- https://developer.android.com/privacy-and-security/security-config - Network accessline 83
- https://developer.android.com/privacy-and-security/risks/cleartext-communications - Network accessline 84
- https://developer.android.com/guide/topics/manifest/application-element - Network accessline 85
- https://capacitorjs.com/docs/cli/commands/build - Network accessline 86
- https://developer.android.com/studio/publish/app-signing - Network accessline 87
- https://developer.android.com/studio/publish/upload-bundle
.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md
- Access to secretsline 62
[Credential-related source omitted] - Network accessline 78
- https://capacitorjs.com/docs/guides/security - Network accessline 79
- https://capacitorjs.com/docs/apis/http - Network accessline 80
- https://capacitorjs.com/docs/apis/cookies - Network accessline 81
- https://capacitorjs.com/docs/apis/preferences - Network accessline 82
- https://developer.android.com/reference/android/webkit/CookieManager - Network accessline 83
- https://developer.android.com/privacy-and-security/keystore - Network accessline 84
- https://developer.android.com/privacy-and-security/risks/insecure-webview-native-bridges - Network accessline 85
- https://github.com/aparajita/capacitor-secure-storage - Network accessline 86
- https://capawesome.io/plugins/secure-preferences/
.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md
- Network accessline 102
- https://capacitorjs.com/docs/config - Network accessline 103
- https://capacitorjs.com/docs/guides/security - Network accessline 104
- https://capacitorjs.com/docs/apis/http - Network accessline 105
- https://capacitorjs.com/docs/apis/inappbrowser - Network accessline 106
- https://developer.android.com/privacy-and-security/risks/unsafe-uri-loading - Network accessline 107
- https://developer.android.com/privacy-and-security/risks/insecure-webview-native-bridges - Network accessline 108
- https://developer.android.com/develop/ui/views/layout/webapps/webview - Network accessline 109
- https://developer.android.com/develop/ui/views/layout/webapps/managing-webview
.agents/planning/2026-02-21-rho-capacitor-native-app/research/rho-web-baseline-and-gaps.md
- Network accessline 22
- API calls are relative (`/api/...`) and WebSocket URL is derived from `window.location`. - `web/public/js/chat/rendering-and-usage.js` (`buildWsUrl()`), multiple `fetch("/api/...")` usages. - Network accessline 23
- `web/public/js/chat/rendering-and-usage.js` (`buildWsUrl()`), multiple `fetch("/api/...")` usages. - Network accessline 84
### External - https://capacitorjs.com/docs/config - Network accessline 85
- https://capacitorjs.com/docs/config - Network accessline 86
- https://capacitorjs.com/docs/guides/security
.agents/planning/2026-03-08-pi-liveview-web-frontend/research/codex-desktop-benchmark.md
- Network accessline 106
- https://developers.openai.com/codex/app - Network accessline 107
- https://developers.openai.com/codex/app/features - Network accessline 108
- https://developers.openai.com/codex/app/settings - Network accessline 109
- https://developers.openai.com/codex/app/review - Network accessline 110
- https://developers.openai.com/codex/app/commands - Network accessline 111
- https://developers.openai.com/codex/agent-approvals-security - Network accessline 112
- https://help.openai.com/en/articles/11369540-using-codex-with-your-chatgpt-plan/ - Network accessline 113
- https://openai.com/index/introducing-the-codex-app/
.agents/planning/2026-03-08-pi-liveview-web-frontend/research/liveview-pwa-patterns.md
- Network accessline 36
`http://localhost` is a secure-enough special case for service workers and PWA installability in current browsers. - Network accessline 118
### Official / primary docs - https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html - Network accessline 119
- https://hexdocs.pm/phoenix_live_view/Phoenix.LiveView.html - Network accessline 120
- https://hexdocs.pm/phoenix_live_view/js-interop.html - Network accessline 121
- https://hexdocs.pm/phoenix_live_view/bindings.html - Network accessline 122
- https://www.phoenixframework.org/blog/phoenix-liveview-1-1-released - Network accessline 123
- https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API - Network accessline 124
- https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Secure_Contexts - Network accessline 125
- https://developer.mozilla.org/en-US/docs/Web/Progressive_web_apps/Tutorials/CycleTracker/Secure_connection - Network accessline 126
- https://web.dev/articles/install-criteria - Network accessline 128
### Additional references surfaced in research - https://github.com/dwyl/PWA-Liveview - Network accessline 129
- https://github.com/dwyl/PWA-Liveview - Network accessline 130
- https://github.com/ndrean/LiveView-PWA - Network accessline 131
- https://smartlogic.io/podcast/elixir-wizards/s13-e03-local-first-liveview-svelte-pwa/
.agents/planning/2026-03-08-pi-liveview-web-frontend/research/multimodal-attachments.md
- Network accessline 139
### Official web sources - https://developers.openai.com/api/docs/guides/file-inputs - Network accessline 140
- https://developers.openai.com/api/docs/guides/file-inputs - Network accessline 141
- https://platform.openai.com/docs/api-reference/uploads/create - Network accessline 142
- https://developers.openai.com/api/docs/guides/retrieval - Network accessline 143
- https://developers.openai.com/api/docs/guides/chatkit - Network accessline 144
- https://docs.anthropic.com/en/docs/build-with-claude/files - Network accessline 145
- https://docs.anthropic.com/en/docs/build-with-claude/citations - Network accessline 146
- https://ai.google.dev/api/files - Network accessline 147
- https://owasp.org/www-community/vulnerabilities/Unrestricted_File_Upload
.agents/planning/2026-03-08-pi-liveview-web-frontend/research/terminal-embedding-libghostty.md
- Network accessline 105
### Primary - https://github.com/ghostty-org/ghostty - Network accessline 106
- https://github.com/ghostty-org/ghostty - Network accessline 107
- https://mitchellh.com/writing/libghostty-is-coming - Network accessline 108
- https://raw.githubusercontent.com/ghostty-org/ghostty/main/include/ghostty/vt.h - Network accessline 109
- https://raw.githubusercontent.com/ghostty-org/ghostty/main/include/ghostty/vt/wasm.h - Network accessline 110
- https://github.com/coder/ghostty-web - Network accessline 111
- https://hexdocs.pm/phoenix/channels.html - Network accessline 112
- https://hexdocs.pm/phoenix_live_view/1.1.1/js-interop.html - Network accessline 113
- https://github.com/alchemist-camp/netrunner - Network accessline 114
- https://xtermjs.org/docs/guides/security/
.agents/summary/dependencies.md
- Access to secretsline 20
[Credential-related source omitted]
.agents/tasks/2026-02-22-android-background-streaming-reliability.code-task.md
- Network accessline 38
**Additional References (if relevant to this task):** - https://developer.android.com/develop/background-work/services/fgs/changes - Network accessline 39
- https://developer.android.com/develop/background-work/services/fgs/changes - Network accessline 40
- https://developer.android.com/develop/background-work/services/fgs/restrictions-bg-start - Network accessline 41
- https://developer.android.com/develop/background-work/background-tasks/persistent/how-to/long-running - Network accessline 42
- https://capacitorjs.com/docs/apis/background-runner
.agents/tasks/2026-02-23-android-background-reliability/task-02-live-mode-native-no-firebase-reliability.code-task.md
- Network accessline 33
**Additional References (if relevant to this task):** - https://developer.android.com/develop/background-work/services/fgs/changes - Network accessline 34
- https://developer.android.com/develop/background-work/services/fgs/changes - Network accessline 35
- https://developer.android.com/develop/background-work/services/fgs/restrictions-bg-start - Network accessline 36
- https://developer.android.com/develop/background-work/services/fgs/timeout - Network accessline 37
- https://developer.android.com/develop/background-work/background-tasks/persistent/how-to/long-running
.agents/tasks/rho-web-tool-rendering/task-05-bash-output-improvements.code-task.md
- Network accessline 13
[ui-improvements 0efc918] ui: bump mobile text size up a notch 2 files changed, 5 insertions(+), 6 deletions(-) To https://github.com/mikeyobrien/rho.git - Network accessline 14
2 files changed, 5 insertions(+), 6 deletions(-) To https://github.com/mikeyobrien/rho.git 6557845..0efc918 ui-improvements -> ui-improvements - Network accessline 15
To https://github.com/mikeyobrien/rho.git
.github/workflows/publish.yml
CHANGELOG.md
- Network accessline 5
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.1.0/), - Network accessline 6
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html). - Access to secretsline 63
[Credential-related source omitted] - Network accessline 86
[Unreleased]: https://github.com/mikeyobrien/rho/compare/v0.1.12...HEAD - Network accessline 87
[0.1.12]: https://github.com/mikeyobrien/rho/compare/v0.1.11...v0.1.12 - Network accessline 88
[0.1.11]: https://github.com/mikeyobrien/rho/compare/v0.1.10...v0.1.11 - Network accessline 89
[0.1.10]: https://github.com/mikeyobrien/rho/compare/v0.1.9...v0.1.10 - Network accessline 90
[0.1.9]: https://github.com/mikeyobrien/rho/compare/v0.1.8...v0.1.9 - Network accessline 91
[0.1.8]: https://github.com/mikeyobrien/rho/compare/v0.1.7...v0.1.8
README.md
- Network accessline 3
[](https://deepwiki.com/mikeyobrien/rho) - Network accessline 4
[](https://x.com/tau_rho_ai) - Network accessline 17
Built on [pi coding agent](https://github.com/badlogic/pi-mono). - Network accessline 99
Then open `http://localhost:3141` (or your host IP). - Network accessline 128
git clone https://github.com/mikeyobrien/rho.git ~/.rho/project - Network accessline 139
Install [Termux](https://f-droid.org/packages/com.termux/) and [Termux:API](https://f-droid.org/packages/com.termux.api/) from F-Droid, then: - Dangerous shell operationline 142
curl -fsSL https://rhobot.dev/install | bash - Network accessline 142
curl -fsSL https://rhobot.dev/install | bash - Network accessline 294
- [pi coding agent](https://github.com/badlogic/pi-mono) - Network accessline 295
- [@tau_rho_ai](https://x.com/tau_rho_ai)
SKILL.md
- Network accessline 12
**What gets installed:** - System deps (Node.js 18+, npm, tmux, git) - [pi coding agent](https://github.com/badlogic/pi-mono) (the runtime rho extends) - Network accessline 13
- System deps (Node.js 18+, npm, tmux, git) - [pi coding agent](https://github.com/badlogic/pi-mono) (the runtime rho extends) - [rho](https://github.com/mikeyobrien/rho) (the agent framework) - Network accessline 14
- [pi coding agent](https://github.com/badlogic/pi-mono) (the runtime rho extends) - Network accessline 15
- [rho](https://github.com/mikeyobrien/rho) (the agent framework) - Dangerous shell operationline 73
| Debian/Ubuntu | `sudo apt update && sudo apt install -y nodejs npm tmux git` | - Dangerous shell operationline 74
| Arch | `sudo pacman -S nodejs npm tmux git` | - Dangerous shell operationline 75
| Fedora | `sudo dnf install nodejs npm tmux git` | - Network accessline 77
If Node.js version is < 18, use [NodeSource](https://github.com/nodesource/distributions) or nvm. - Network accessline 104
cd ~/.rho/project && git pull --ff-only else git clone https://github.com/mikeyobrien/rho.git ~/.rho/project - Network accessline 105
else git clone https://github.com/mikeyobrien/rho.git ~/.rho/project fi - Network accessline 106
git clone https://github.com/mikeyobrien/rho.git ~/.rho/project
apt/Packages
- Network accessline 10
SHA1: 3ae8b62800e39fd028c1262a39b77871a0c5e54c SHA256: 8dab071c1f0d430e7f6e430b84fd89d40318a4a1e5fe3c833eb72368a2b5e91b Homepage: https://github.com/mikeyobrien/rho - Network accessline 11
SHA256: 8dab071c1f0d430e7f6e430b84fd89d40318a4a1e5fe3c833eb72368a2b5e91b Homepage: https://github.com/mikeyobrien/rho Description: Rho - AI agent configuration for pi with periodic check-ins and Termux integration - Network accessline 12
Homepage: https://github.com/mikeyobrien/rho
cli/commands/bootstrap.ts
cli/commands/config.ts
- Executable scriptline 1
Executable file
cli/commands/doctor.ts
- Executable scriptline 1
Executable file
cli/commands/init.ts
- Executable scriptline 1
Executable file
cli/commands/login.ts
- Executable scriptline 1
Executable file
cli/commands/logs.ts
- Executable scriptline 1
Executable file
cli/commands/skills.ts
- Executable scriptline 1
Executable file
cli/commands/start.ts
- Executable scriptline 1
Executable file
cli/commands/status.ts
- Executable scriptline 1
Executable file
cli/commands/stop.ts
- Executable scriptline 1
Executable file
cli/commands/sync.ts
- Executable scriptline 1
Executable file
cli/commands/telegram.ts
- Executable scriptline 1
Executable file - Network accessline 272
[Credential-related source omitted] - Network accessline 273
const response = await fetch(`https://api.telegram.org/bot${token}/getMe`, { - Network accessline 595
if (chatId === null || userId === null) { console.log("\nStep 3: Detect chat/user from first message"); console.log(` Send any message to: https://t.me/${username}`); - Network accessline 596
console.log("\nStep 3: Detect chat/user from first message"); console.log(` Send any message to: https://t.me/${username}`); console.log(` Waiting up to ${opts.timeoutSeconds}s...`); - Network accessline 597
console.log(` Send any message to: https://t.me/${username}`);
cli/commands/trigger.ts
- Executable scriptline 1
Executable file
cli/commands/upgrade.ts
- Executable scriptline 1
Executable file
cli/commands/web.ts
- Executable scriptline 1
Executable file - Network accessline 397
if (open) { openBrowser(`http://localhost:${port}`); - Network accessline 398
openBrowser(`http://localhost:${port}`); - Network accessline 454
console.log(`Rho web running at http://localhost:${port}`); - Network accessline 456
if (open) { openBrowser(`http://localhost:${port}`); - Network accessline 457
openBrowser(`http://localhost:${port}`); - Network accessline 551
const url = `http://localhost:${port}`;
cli/config.ts
- Executable scriptline 1
Executable file
cli/daemon-core.ts
- Executable scriptline 1
Executable file
cli/doctor-core.ts
- Executable scriptline 1
Executable file
cli/index.ts
- Executable scriptline 1
#!/usr/bin/env -S node --experimental-strip-types
cli/init-core.ts
- Executable scriptline 1
Executable file
cli/registry.ts
- Executable scriptline 1
Executable file
cli/rho.mjs
- Executable scriptline 1
#!/usr/bin/env node
cli/sync-core.ts
- Executable scriptline 1
Executable file
cli/telegramd.mjs
- Executable scriptline 1
#!/usr/bin/env node
cli/telegramd.ts
- Executable scriptline 1
#!/usr/bin/env node
docs/configuration.md
- Network accessline 61
Attribution for those default third-party modules: Special thanks to **Nico Bailon (@nicobailon)** for building and maintaining these packages. - `subagents` → [`nicobailon/pi-subagents`](https://github.com/nicobailon/pi-subagents) - Network accessline 62
Special thanks to **Nico Bailon (@nicobailon)** for building and maintaining these packages. - `subagents` → [`nicobailon/pi-subagents`](https://github.com/nicobailon/pi-subagents) - `messenger` → [`nicobailon/pi-messenger`](https://github. - Network accessline 63
- `subagents` → [`nicobailon/pi-subagents`](https://github.com/nicobailon/pi-subagents) - Network accessline 64
- `messenger` → [`nicobailon/pi-messenger`](https://github.com/nicobailon/pi-messenger) - Network accessline 65
- `interactive-shell` → [`nicobailon/pi-interactive-shell`](https://github.com/nicobailon/pi-interactive-shell) - Network accessline 66
- `web-access` → [`nicobailon/pi-web-access`](https://github.com/nicobailon/pi-web-access) - Network accessline 67
- `mcp-adapter` → [`nicobailon/pi-mcp-adapter`](https://github.com/nicobailon/pi-mcp-adapter) - Network accessline 68
- `interview-tool` (`pi-interview`) → [`nicobailon/pi-interview-tool`](https://github.com/nicobailon/pi-interview-tool) - Network accessline 69
- `visual-explainer` → [`nicobailon/visual-explainer`](https://github.com/nicobailon/visual-explainer) - Access to secretsline 96
[Credential-related source omitted]
docs/email-demo.cast
- Network accessline 18
[0.082, "o", "\u001b[?2026h\u001b[4A\r\u001b[2K \u001b[38;2;138;190;183m⠸\u001b[39m \u001b[38;2;128;128;128mWorking...\u001b[39m \u001b[0m\u001b]8;;\u0007 - Network accessline 19
[0.001, "o", "\u001b[4B\u001b[1G\u001b[?25l"] [0.081, "o", "\u001b[?2026h\u001b[4A\r\u001b[2K\u001b[38;2;255;255;0m────────────────────────────────────────────────────────────────────────────────────────────────────\u001b[39m\u001b[0m\u001b - Network accessline 20
[0.081, "o", "\u001b[?2026h\u001b[4A\r\u001b[2K\u001b[38;2;255;255;0m────────────────────────────────────────────────────────────────────────────────────────────────────\u001b[39m\u001b[0m\u001b]8;;\u0007\r\r\n\u001b[2K \u001b[1m\u001b[38;2 - Network accessline 56
[0.051, "o", "\u001b[1G"] [0.000, "o", "\u001b[?25l"] [0.002, "o", "\u001b[?2026h\u001b[10A\r\u001b[2K I see \u001b[0m\u001b]8;;\u0007\r\r\n\u001b[ - Network accessline 57
[0.000, "o", "\u001b[?25l"] [0.002, "o", "\u001b[?2026h\u001b[10A\r\u001b[2K I see \u001b[0m\u001b]8;;\u0007\r\r\n\u001b[2K\u001b[0m\u001b]8;;\u000 - Network accessline 58
[0.002, "o", "\u001b[?2026h\u001b[10A\r\u001b[2K I see \u001b[0m\u001b]8;;\u0007\r\r\n\u001b[2K\u001b[0m\u001b]8;;\u0007\r\r\n\u001b[2K\u001b[38;2; - Access to secretsline 143
[Credential-related source omitted] - Access to secretsline 145
[Credential-related source omitted] - Network accessline 147
[0.000, "o", "9m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m\u001b[38;2;80;80;80m─\u001b[39m - Network accessline 148
[Credential-related source omitted] - Access to secretsline 148
[Credential-related source omitted] - Network accessline 150
[Credential-related source omitted] - Access to secretsline 150
[Credential-related source omitted] - Network accessline 214
[0.001, "o", "\u001b[?2026h\u001b[4A\r\u001b[2K \u001b[38;2;138;190;183m⠧\u001b[39m \u001b[38;2;128;128;128mWorking...\u001b[39m \u001b[0m\u001b]8;;\u0007 - Network accessline 215
[0.000, "o", "\u001b[?25l"] [0.017, "o", "\u001b[?2026h\u001b[5A\r\u001b[2K\u001b[48;2;40;40;50m \u001b[38;2;128;128;128m... (54 earlier lines,\u001b[39m \u001b[38;2;102;102;102mctrl+o\u001b[39m\u001b[38;2;128;128;128m to expand\u001b[39m) - Network accessline 216
[Credential-related source omitted] - Access to secretsline 216
[Credential-related source omitted] - Network accessline 218
[Credential-related source omitted] - Access to secretsline 218
[Credential-related source omitted]
docs/iphone-setup.md
- Network accessline 11
- A server running Rho (home machine, VPS, or cloud instance) - An SSH client on your iPhone ([Termius](https://apps.apple.com/app/termius-terminal-ssh-client/id549039908) recommended, or [Blink Shell](https://apps.apple.com/app/blink-shell - Network accessline 12
- An SSH client on your iPhone ([Termius](https://apps.apple.com/app/termius-terminal-ssh-client/id549039908) recommended, or [Blink Shell](https://apps.apple.com/app/blink-shell-build-code/id1594898306)) - Network accessline 34
1. Install [Termius](https://apps.apple.com/app/termius-terminal-ssh-client/id549039908) from the App Store - Network accessline 73
If your server is a home machine (Mac Mini, Raspberry Pi, old laptop), use [Tailscale](https://tailscale.com/) for remote access without port forwarding: - Network accessline 75
1. Install Tailscale on your server: https://tailscale.com/download
docs/mobile-tailscale.md
- Network accessline 70
curl http://100.x.y.z:3141/api/health - Network accessline 76
http://100.x.y.z:3141 - Network accessline 82
http://rho-box.your-tailnet.ts.net:3141 - Network accessline 209
You should still expect a confirmation warning, because the URL is still `http://`, but the app no longer treats these as public internet HTTP by default. - Network accessline 211
In practice: - plain `http://` over the open internet is bad - Network accessline 212
- plain `http://` over the open internet is bad - Network accessline 213
- `http://` carried inside a Tailscale tailnet is usually a reasonable setup for personal rho access because Tailscale encrypts the transport between tailnet devices - Network accessline 219
If you already run rho-web behind HTTPS, use it. If not, a direct Tailscale `http://100.x.y.z:3141` setup is the normal low-friction option. - Network accessline 235
rho status tailscale status curl http://127.0.0.1:3141/api/health - Network accessline 236
tailscale status curl http://127.0.0.1:3141/api/health curl http://$(tailscale ip -4 | head -n1):3141/api/health - Network accessline 237
curl http://127.0.0.1:3141/api/health - Network accessline 238
curl http://$(tailscale ip -4 | head -n1):3141/api/health
docs/rho-android-privacy-policy.md
- Network accessline 67
Project: https://github.com/mikeyobrien/rho
docs/tasker-setup.md
- Network accessline 9
1. **Tasker** - [Play Store](https://play.google.com/store/apps/details?id=net.dinglisch.android.taskerm) - Network accessline 303
# Test open URL am broadcast --user 0 -a rho.tasker.open_url \ -e url "https://example.com" \ - Network accessline 304
am broadcast --user 0 -a rho.tasker.open_url -e url "https://example.com" - Network accessline 305
-e url "https://example.com" \ - Network accessline 311
# Or use the rho command /tasker open_url https://example.com - Network accessline 312
/tasker open_url https://example.com
docs/telegram.md
docs/termux-config.md
- Network accessline 41
`termux-speech-to-text` has a known bug ([termux-api #288](https://github.com/termux/termux-api/issues/288)) where the last 1-2 words of speech are cut off. It streams partial results and loses the final recognition. `termux-dialog speech`
docs/vps-setup.md
- Network accessline 9
1. Sign up at https://cloud.oracle.com/ - Dangerous shell operationline 24
sudo apt update && sudo apt install -y nodejs npm tmux - Network accessline 39
1. Sign up at https://console.hetzner.cloud/ - Network accessline 49
1. Sign up at https://cloud.digitalocean.com/ - Access to secretsline 62
[Credential-related source omitted] - Access to secretsline 68
[Credential-related source omitted] - Dangerous shell operationline 79
sudo ufw allow ssh - Dangerous shell operationline 80
sudo ufw enable
extensions/brave-search/index.ts
- Executable scriptline 1
Executable file - Network accessline 3
* * Requires BRAVE_API_KEY environment variable. * Get one at: https://brave.com/search/api/ - Network accessline 4
[Credential-related source omitted] - Access to secretsline 4
[Credential-related source omitted] - Network accessline 5
* Get one at: https://brave.com/search/api/ - Network accessline 11
[Credential-related source omitted] - Access to secretsline 11
[Credential-related source omitted] - Network accessline 12
const SEARCH_URL = "https://api.search.brave.com/res/v1/web/search"; - Access to secretsline 34
[Credential-related source omitted] - Access to secretsline 35
[Credential-related source omitted] - Network accessline 43
const response = await fetch(`${SEARCH_URL}?${params}`, { - Access to secretsline 46
[Credential-related source omitted] - Access to secretsline 80
[Credential-related source omitted] - Access to secretsline 85
[Credential-related source omitted] - Access to secretsline 135
[Credential-related source omitted] - Access to secretsline 136
[Credential-related source omitted]
extensions/email/index.ts
- Executable scriptline 1
Executable file - Access to secretsline 9
[Credential-related source omitted] - Network accessline 40
const CONFIG_PATH = join(process.env.HOME || "", ".config", "rho-cloud", "config.json"); const POLL_INTERVAL_MS = 5 * 60 * 1000; // 5 minutes const API_BASE = "https://api.rhobot.dev/v1"; - Network accessline 42
const API_BASE = "https://api.rhobot.dev/v1"; - Access to secretsline 45
[Credential-related source omitted] - Access to secretsline 204
[Credential-related source omitted] - Network accessline 208
for (let attempt = 0; attempt <= retries; attempt++) { try { const res = await fetch(url, { - Network accessline 209
try { const res = await fetch(url, { method, - Network accessline 210
const res = await fetch(url, {
extensions/lib/auto-memory-delta.ts
- Executable scriptline 1
Executable file
extensions/lib/auto-memory-model.ts
- Executable scriptline 1
Executable file
extensions/lib/auto-memory-status.ts
- Executable scriptline 1
Executable file
extensions/lib/brain-bootstrap-schema.ts
- Executable scriptline 1
Executable file
extensions/lib/brain-bootstrap-state.ts
- Executable scriptline 1
Executable file
extensions/lib/brain-migration.ts
- Executable scriptline 1
Executable file
extensions/lib/brain-store.ts
- Executable scriptline 1
Executable file
extensions/lib/brain-tool.ts
- Executable scriptline 1
Executable file
extensions/lib/file-lock.ts
- Executable scriptline 1
Executable file
extensions/lib/lease-lock.ts
- Executable scriptline 1
Executable file
extensions/lib/memory-settings.ts
- Executable scriptline 1
Executable file
extensions/lib/mod.ts
- Executable scriptline 1
Executable file
extensions/lib/provider-usage.ts
- Executable scriptline 1
Executable file - Network accessline 112
try { const res = await fetchImpl("https://chatgpt.com/backend-api/wham/usage", { - Network accessline 113
const res = await fetchImpl("https://chatgpt.com/backend-api/wham/usage", { - Access to secretsline 166
[Credential-related source omitted] - Access to secretsline 281
[Credential-related source omitted] - Access to secretsline 288
[Credential-related source omitted] - Network accessline 312
usageBuckets: [], bonusCredits: null, manageUrl: "https://app.kiro.dev/account/usage", - Network accessline 313
bonusCredits: null, manageUrl: "https://app.kiro.dev/account/usage", ...(error ? { error } : {}), - Network accessline 314
manageUrl: "https://app.kiro.dev/account/usage", - Network accessline 322
fetchImpl: typeof fetch = fetch, ): Promise<KiroUsageSummary> { const endpoint = `https://q.${region}.amazonaws.com/`; - Network accessline 324
const endpoint = `https://q.${region}.amazonaws.com/`; - Network accessline 415
usageBuckets: buckets, bonusCredits, manageUrl: "https://app.kiro.dev/account/usage", - Network accessline 416
bonusCredits, manageUrl: "https://app.kiro.dev/account/usage", }; - Network accessline 417
manageUrl: "https://app.kiro.dev/account/usage",
extensions/lib/transient-blocklist.ts
- Executable scriptline 1
Executable file
extensions/lib/vault-lib.ts
- Executable scriptline 1
Executable file
extensions/lib/vault-search-lib.ts
- Executable scriptline 1
Executable file
extensions/memory-viewer/index.ts
- Executable scriptline 1
Executable file
extensions/review/command.test.ts
- Executable scriptline 1
Executable file
extensions/review/files.test.ts
extensions/review/files.ts
- Executable scriptline 1
Executable file
extensions/review/format.test.ts
- Executable scriptline 1
Executable file - Network accessline 12
startLine: 12, endLine: 12, selectedText: "const data = fetch(url)", - Network accessline 13
endLine: 12, selectedText: "const data = fetch(url)", comment: "This should handle errors.", - Network accessline 14
selectedText: "const data = fetch(url)", - Network accessline 22
assert.ok(result.includes("### src/utils.ts")); assert.ok(result.includes("**Line 12:**")); assert.ok(result.includes("> const data = fetch(url)")); - Network accessline 23
assert.ok(result.includes("**Line 12:**")); assert.ok(result.includes("> const data = fetch(url)")); assert.ok(result.includes("This should handle errors.")); - Network accessline 24
assert.ok(result.includes("> const data = fetch(url)"));
extensions/review/format.ts
- Executable scriptline 1
Executable file
extensions/review/git-tracker.ts
- Executable scriptline 1
Executable file
extensions/review/index.ts
- Executable scriptline 1
Executable file - Network accessline 79
const baseUrl = reviewApiBaseUrl(); await ensureRhoWebRunning(baseUrl); return fetch(`${baseUrl}${path}`, init); - Network accessline 80
await ensureRhoWebRunning(baseUrl); return fetch(`${baseUrl}${path}`, init); } - Network accessline 81
return fetch(`${baseUrl}${path}`, init);
extensions/review/package-lock.json
- Network accessline 14
"node_modules/@isaacs/balanced-match": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", - Network accessline 15
"version": "4.0.1", "resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", "integrity": "sha512-yzMTt9lEb8Gv7zRioUilSglI0c0smZ9k5D65677DLWLtWJaXIS3CqcGyUFByYKlnUj6TkjLVs54fBl6+TiGQDQ==", - Network accessline 16
"resolved": "https://registry.npmjs.org/@isaacs/balanced-match/-/balanced-match-4.0.1.tgz", - Network accessline 23
"node_modules/@isaacs/brace-expansion": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz", - Network accessline 24
"version": "5.0.1", "resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz", "integrity": "sha512-WMz71T1JS624nWj2n2fnYAuPovhv7EUhk69R6i9dsVyzxt5eM3bjwvgk9L+APE1TRscGysAVMANkB0jh0LQZrQ==", - Network accessline 25
"resolved": "https://registry.npmjs.org/@isaacs/brace-expansion/-/brace-expansion-5.0.1.tgz", - Network accessline 35
"node_modules/@isaacs/cliui": { "version": "9.0.0", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz", - Network accessline 36
"version": "9.0.0", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz", "integrity": "sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==", - Network accessline 37
"resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-9.0.0.tgz", - Network accessline 44
"node_modules/@sinclair/typebox": { "version": "0.34.48", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", - Network accessline 45
"version": "0.34.48", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", "integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==", - Network accessline 46
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", - Network accessline 50
"node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - Network accessline 51
"version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - Network accessline 52
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - Network accessline 64
"node_modules/foreground-child": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - Network accessline 65
"version": "3.3.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", - Network accessline 66
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - Network accessline 75
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 76
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 77
"url": "https://github.com/sponsors/isaacs" - Network accessline 80
"node_modules/glob": { "version": "11.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz", - Network accessline 81
"version": "11.1.0", "resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz", "integrity": "sha512-vuNwKSaKiqm7g0THUBu2x7ckSs3XJLXE+2ssL7/MfTGPLLcrJQ/4Uq1CjPTtO5cCIiRxqvN6Twy1qOwhL0Xjcw==", - Network accessline 82
"resolved": "https://registry.npmjs.org/glob/-/glob-11.1.0.tgz", - Network accessline 99
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 100
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 101
"url": "https://github.com/sponsors/isaacs" - Network accessline 104
"node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - Network accessline 105
"version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - Network accessline 106
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - Network accessline 110
"node_modules/jackspeak": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz", - Network accessline 111
"version": "4.2.3", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz", "integrity": "sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==", - Network accessline 112
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-4.2.3.tgz", - Network accessline 120
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 121
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 122
"url": "https://github.com/sponsors/isaacs" - Network accessline 125
"node_modules/lru-cache": { "version": "11.2.6", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.6.tgz", - Network accessline 126
"version": "11.2.6", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.6.tgz", "integrity": "sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==", - Network accessline 127
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-11.2.6.tgz", - Network accessline 134
"node_modules/minimatch": { "version": "10.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.2.tgz", - Network accessline 135
"version": "10.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.2.tgz", "integrity": "sha512-fu656aJ0n2kcXwsnwnv9g24tkU5uSmOlTjd6WyyaKm2Z+h1qmY6bAjrcaIxF/BslFqbZ8UBtbJi7KgQOZD2PTw==", - Network accessline 136
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-10.1.2.tgz", - Network accessline 144
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 145
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 146
"url": "https://github.com/sponsors/isaacs" - Network accessline 149
"node_modules/minipass": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - Network accessline 150
"version": "7.1.2", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", "integrity": "sha512-qOOzS1cBTWYF4BH8fVePDBOO9iptMnGUEZwNc/cMWnTV2nVLZ7VoNWEPHkYczZA0pdoA7dl6e7FL659nX9S2aw==", - Network accessline 151
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.2.tgz", - Network accessline 158
"node_modules/package-json-from-dist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - Network accessline 159
"version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw= - Network accessline 160
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - Network accessline 164
"node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - Network accessline 165
"version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - Network accessline 166
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - Network accessline 173
"node_modules/path-scurry": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz", - Network accessline 174
"version": "2.0.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz", "integrity": "sha512-oWyT4gICAu+kaA7QWk/jvCHWarMKNs6pXOGWKDTr7cw4IGcUbW+PeTfbaQiLGheFRpjo6O9J0PmyMfQPjH71oA==", - Network accessline 175
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-2.0.1.tgz", - Network accessline 184
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 185
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 186
"url": "https://github.com/sponsors/isaacs" - Network accessline 189
"node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - Network accessline 190
"version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - Network accessline 191
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - Network accessline 201
"node_modules/shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - Network accessline 202
"version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - Network accessline 203
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - Network accessline 210
"node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 211
"version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - Network accessline 212
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 217
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 218
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 219
"url": "https://github.com/sponsors/isaacs" - Network accessline 222
"node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - Network accessline 223
"version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - Network accessline 224
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - Network accessline 237
"node_modules/ws": { "version": "8.19.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - Network accessline 238
"version": "8.19.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", - Network accessline 239
"resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz",
extensions/review/package.json
- Executable scriptline 1
Executable file
extensions/review/server.test.ts
- Executable scriptline 1
Executable file - Network accessline 30
return new Promise((resolve, reject) => { http .get(`http://127.0.0.1:${port}${path}`, { agent: false }, (res) => { - Network accessline 31
http .get(`http://127.0.0.1:${port}${path}`, { agent: false }, (res) => { let body = ""; - Network accessline 32
.get(`http://127.0.0.1:${port}${path}`, { agent: false }, (res) => { - Network accessline 297
assert.ok(readyUrl, "onReady should have been called"); assert.equal(readyUrl, `http://127.0.0.1:${port}`); - Network accessline 298
assert.equal(readyUrl, `http://127.0.0.1:${port}`);
extensions/review/server.ts
- Executable scriptline 1
Executable file - Network accessline 192
const url = `http://127.0.0.1:${port}`; - Network accessline 244
export const DEFAULT_RHO_WEB = process.env.RHO_REVIEW_BASE_URL ?? "http://127.0.0.1:3141"; - Network accessline 245
process.env.RHO_REVIEW_BASE_URL ?? "http://127.0.0.1:3141"; - Network accessline 253
const t = setTimeout(() => controller.abort(), timeoutMs); try { return await fetch(url, { ...init, signal: controller.signal }); - Network accessline 254
try { return await fetch(url, { ...init, signal: controller.signal }); } finally { - Network accessline 255
return await fetch(url, { ...init, signal: controller.signal }); - Network accessline 313
const createRes = await fetch(`${baseUrl}/api/review/sessions`, {
extensions/review/tui.test.ts
extensions/review/tui.ts
- Executable scriptline 1
Executable file
extensions/review/web.test.ts
- Executable scriptline 1
Executable file - Network accessline 26
): Promise<{ status: number; headers: http.IncomingHttpHeaders; body: string }> { return new Promise((resolve, reject) => { const req = http.get(`http://127.0.0.1:${port}${path}`, (res) => { - Network accessline 27
return new Promise((resolve, reject) => { const req = http.get(`http://127.0.0.1:${port}${path}`, (res) => { let body = ""; - Network accessline 28
const req = http.get(`http://127.0.0.1:${port}${path}`, (res) => {
extensions/review/web/index.html
- Network accessline 6
<title>Review</title> <style> @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2') - Network accessline 7
<style> @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2'); } @font-face { fon - Network accessline 8
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2'); } - Network accessline 9
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 500; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-500-normal.woff2) format('woff2'); } - Network accessline 10
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 700; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-700-normal.woff2) format('woff2'); } - Network accessline 11
</style> <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css"> <link rel="stylesheet" href="/css/review.css"> - Network accessline 12
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css"> - Network accessline 128
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script> - Network accessline 129
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/typescript.min.js"></script> - Network accessline 130
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/python.min.js"></script> - Network accessline 131
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/rust.min.js"></script> - Network accessline 132
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/go.min.js"></script> - Network accessline 133
<script src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/languages/bash.min.js"></script> - Network accessline 134
<script defer src="https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js"></script>
extensions/review/web/js/review.js
- Executable scriptline 1
Executable file - Network accessline 19
try { const cfgRes = await fetch("/api/config"); - Network accessline 20
const cfgRes = await fetch("/api/config"); - Network accessline 28
try { const warnRes = await fetch("/api/warnings"); - Network accessline 29
const warnRes = await fetch("/api/warnings"); - Network accessline 36
try { const res = await fetch("/api/files"); - Network accessline 37
const res = await fetch("/api/files");
extensions/rho/bootstrap/slash-bootstrap.ts
- Executable scriptline 1
Executable file
extensions/rho/index.ts
extensions/rho/tasks-core.ts
- Executable scriptline 1
Executable file
extensions/telegram/api.ts
- Executable scriptline 1
Executable file - Network accessline 69
[Credential-related source omitted] - Network accessline 70
filePath: string, baseUrl = "https://api.telegram.org", ): Promise<Uint8Array> { - Network accessline 71
baseUrl = "https://api.telegram.org", - Network accessline 78
const url = `${baseUrl.replace(/\/+$/, "")}/file/bot${token}/${normalizedPath}`; const response = await fetch(url); - Network accessline 79
const response = await fetch(url);
extensions/telegram/check-trigger.ts
- Executable scriptline 1
Executable file
extensions/telegram/index.ts
extensions/telegram/jobs.ts
- Executable scriptline 1
Executable file
extensions/telegram/lib.ts
extensions/telegram/log.ts
- Executable scriptline 1
Executable file
extensions/telegram/operator-config.ts
- Executable scriptline 1
Executable file
extensions/telegram/outbound.ts
- Executable scriptline 1
Executable file
extensions/telegram/pending-approvals.ts
- Executable scriptline 1
Executable file - Network accessline 39
if (!/^\d{6}$/.test(pin)) continue; const id = String((item as any).id || `${chatId}:${userId ?? "null"}`); requests.push({ - Network accessline 40
const id = String((item as any).id || `${chatId}:${userId ?? "null"}`); requests.push({ id, - Network accessline 41
requests.push({ - Network accessline 82
export function listPendingApprovals(path = getPendingApprovalsPath()): TelegramPendingApproval[] { return loadState(path).requests.sort((a, b) => a.firstSeenAt - b.firstSeenAt); - Network accessline 83
return loadState(path).requests.sort((a, b) => a.firstSeenAt - b.firstSeenAt); - Network accessline 94
const existing = state.requests.find((r) => r.id === id); - Network accessline 103
const usedPins = new Set(state.requests.map((r) => r.pin)); - Network accessline 115
state.requests.push(request); - Network accessline 121
const state = loadState(path); const normalizedPin = String(pin || "").trim(); const idx = state.requests.findIndex((r) => r.pin === normalizedPin); - Network accessline 122
const normalizedPin = String(pin || "").trim(); const idx = state.requests.findIndex((r) => r.pin === normalizedPin); if (idx < 0) return null; - Network accessline 123
const idx = state.requests.findIndex((r) => r.pin === normalizedPin); - Network accessline 124
if (idx < 0) return null; const [request] = state.requests.splice(idx, 1); saveState(state, path); - Network accessline 125
const [request] = state.requests.splice(idx, 1); - Network accessline 130
export function approvePendingByChatId(chatId: number, path = getPendingApprovalsPath()): TelegramPendingApproval | null { const state = loadState(path); const idx = state.requests.findIndex((r) => r.chatId === chatId); - Network accessline 131
const state = loadState(path); const idx = state.requests.findIndex((r) => r.chatId === chatId); if (idx < 0) return null; - Network accessline 132
const idx = state.requests.findIndex((r) => r.chatId === chatId); - Network accessline 133
if (idx < 0) return null; const [request] = state.requests.splice(idx, 1); saveState(state, path); - Network accessline 134
const [request] = state.requests.splice(idx, 1); - Network accessline 140
const state = loadState(path); const normalizedPin = String(pin || "").trim(); const idx = state.requests.findIndex((r) => r.pin === normalizedPin); - Network accessline 141
const normalizedPin = String(pin || "").trim(); const idx = state.requests.findIndex((r) => r.pin === normalizedPin); if (idx < 0) return null; - Network accessline 142
const idx = state.requests.findIndex((r) => r.pin === normalizedPin); - Network accessline 143
if (idx < 0) return null; const [request] = state.requests.splice(idx, 1); saveState(state, path); - Network accessline 144
const [request] = state.requests.splice(idx, 1); - Network accessline 149
export function rejectPendingByChatId(chatId: number, path = getPendingApprovalsPath()): TelegramPendingApproval | null { const state = loadState(path); const idx = state.requests.findIndex((r) => r.chatId === chatId); - Network accessline 150
const state = loadState(path); const idx = state.requests.findIndex((r) => r.chatId === chatId); if (idx < 0) return null; - Network accessline 151
const idx = state.requests.findIndex((r) => r.chatId === chatId); - Network accessline 152
if (idx < 0) return null; const [request] = state.requests.splice(idx, 1); saveState(state, path); - Network accessline 153
const [request] = state.requests.splice(idx, 1);
extensions/telegram/poll-leadership.ts
- Executable scriptline 1
Executable file
extensions/telegram/router.ts
- Executable scriptline 1
Executable file
extensions/telegram/rpc.ts
- Executable scriptline 1
Executable file
extensions/telegram/session-map.ts
- Executable scriptline 1
Executable file
extensions/telegram/slash-contract.ts
- Executable scriptline 1
Executable file
extensions/telegram/status.ts
- Executable scriptline 1
Executable file
extensions/telegram/stt.ts
- Executable scriptline 1
Executable file - Network accessline 70
const response = await fetch("https://api.elevenlabs.io/v1/speech-to-text", { - Network accessline 108
constructor(config: SttProviderConfig) { this.apiKeyEnv = config.apiKeyEnv; this.baseUrl = (config.endpoint || "https://api.openai.com") - Network accessline 109
this.apiKeyEnv = config.apiKeyEnv; this.baseUrl = (config.endpoint || "https://api.openai.com") .replace(/\/+$/, "") - Network accessline 110
this.baseUrl = (config.endpoint || "https://api.openai.com") - Network accessline 126
const url = `${this.baseUrl}/v1/audio/transcriptions`; const response = await fetch(url, { - Network accessline 127
const response = await fetch(url, {
extensions/telegram/worker-lock.ts
- Executable scriptline 1
Executable file
extensions/telegram/worker-runtime.ts
- Executable scriptline 1
Executable file - Access to secretsline 408
[Credential-related source omitted] - Access to secretsline 566
[Credential-related source omitted] - Access to secretsline 568
[Credential-related source omitted] - Network accessline 571
const voiceId = (process.env.ELEVENLABS_TTS_VOICE_ID || process.env.ELEVENLABS_VOICE_ID || DEFAULT_ELEVENLABS_TTS_VOICE_ID).trim(); const endpoint = `https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(voiceId)}`; - Network accessline 572
const endpoint = `https://api.elevenlabs.io/v1/text-to-speech/${encodeURIComponent(voiceId)}`; - Network accessline 574
const response = await fetch(endpoint, { - Access to secretsline 665
[Credential-related source omitted] - Access to secretsline 666
[Credential-related source omitted]
extensions/telegram/worker.ts
- Executable scriptline 1
Executable file
extensions/usage-bars/index.ts
extensions/vault-search/index.ts
- Executable scriptline 1
Executable file
extensions/x-search/index.ts
- Executable scriptline 1
Executable file - Network accessline 3
* * Requires XAI_API_KEY environment variable. * Get one at: https://console.x.ai/ - Network accessline 4
[Credential-related source omitted] - Access to secretsline 4
[Credential-related source omitted] - Network accessline 5
* Get one at: https://console.x.ai/ - Network accessline 7
* Env: * - XAI_API_KEY (required) * - XAI_API_BASE_URL (optional, default: https://api.x.ai/v1) - Network accessline 8
[Credential-related source omitted] - Access to secretsline 8
[Credential-related source omitted] - Network accessline 9
* - XAI_API_BASE_URL (optional, default: https://api.x.ai/v1) - Network accessline 20
[Credential-related source omitted] - Access to secretsline 20
[Credential-related source omitted] - Network accessline 21
const BASE_URL = process.env.XAI_API_BASE_URL || "https://api.x.ai/v1"; - Access to secretsline 87
[Credential-related source omitted] - Network accessline 120
{ role: "user", content: `Find up to ${Math.max(1, Math.min(count, 20))} recent and relevant X posts for the query: ${JSON.stringify(query)}.\n\nRules:\n- Only include direct X status URLs (https://x.com/<user>/status/<id>). - Network accessline 121
role: "user", content: `Find up to ${Math.max(1, Math.min(count, 20))} recent and relevant X posts for the query: ${JSON.stringify(query)}.\n\nRules:\n- Only include direct X status URLs (https://x.com/<user>/status/<id>).\n- De-dup - Network accessline 122
content: `Find up to ${Math.max(1, Math.min(count, 20))} recent and relevant X posts for the query: ${JSON.stringify(query)}.\n\nRules:\n- Only include direct X status URLs (https://x.com/<user>/status/<id>).\n- De-duplicate near-identical - Network accessline 136
const res = await fetch(`${BASE_URL}/responses`, { - Access to secretsline 140
[Credential-related source omitted] - Access to secretsline 198
[Credential-related source omitted] - Access to secretsline 203
[Credential-related source omitted] - Access to secretsline 238
[Credential-related source omitted] - Access to secretsline 239
[Credential-related source omitted]
features/rho-login.feature
install.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 4
# Two modes, auto-detected: # # User install (curl | bash, or run standalone): - Network accessline 5
# # User install (curl | bash, or run standalone): # curl -fsSL https://rhobot.dev/install | bash - Dangerous shell operationline 6
# User install (curl | bash, or run standalone): - Network accessline 6
# User install (curl | bash, or run standalone): - Dangerous shell operationline 7
# curl -fsSL https://rhobot.dev/install | bash - Network accessline 7
# curl -fsSL https://rhobot.dev/install | bash - Network accessline 9
# # Developer install (run from a git checkout): # git clone https://github.com/mikeyobrien/rho.git - Network accessline 10
# Developer install (run from a git checkout): # git clone https://github.com/mikeyobrien/rho.git # cd rho && ./install.sh - Network accessline 11
# git clone https://github.com/mikeyobrien/rho.git - Network accessline 87
if ! command -v termux-battery-status &>/dev/null; then warn "Termux:API not installed" echo " Install from F-Droid: https://f-droid.org/packages/com.termux.api/" - Network accessline 88
warn "Termux:API not installed" echo " Install from F-Droid: https://f-droid.org/packages/com.termux.api/" echo " Rho will work without it, but you'll miss notifications, sensors, etc." - Network accessline 89
echo " Install from F-Droid: https://f-droid.org/packages/com.termux.api/" - Network accessline 122
else echo "" echo " Install Homebrew: https://brew.sh" - Network accessline 123
echo "" echo " Install Homebrew: https://brew.sh" echo " Then: brew install node tmux" - Network accessline 124
echo " Install Homebrew: https://brew.sh" - Dangerous shell operationline 145
echo " sudo apt update && sudo apt install -y nodejs npm tmux" - Dangerous shell operationline 147
echo " sudo pacman -S nodejs npm tmux" - Dangerous shell operationline 149
echo " sudo dnf install nodejs npm tmux" - Dangerous shell operationline 205
rm -f "$pi_dir/extensions" - Dangerous shell operationline 207
find "$pi_dir/extensions" -maxdepth 1 -type l -delete 2>/dev/null || true - Dangerous shell operationline 210
rm -f "$pi_dir/skills" - Dangerous shell operationline 212
find "$pi_dir/skills" -maxdepth 1 -type l -delete 2>/dev/null || true - Dangerous shell operationline 226
[ -L "$bin_dir/$name" ] && rm -f "$bin_dir/$name"
mobile/rho-android/android/.gitignore
- Network accessline 1
# Using Android gitignore template: https://github.com/github/gitignore/blob/HEAD/Android.gitignore
mobile/rho-android/android/app/build.gradle
- Network accessline 54
aaptOptions { // Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps. // Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f - Network accessline 55
// Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps. // Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAs - Network accessline 56
// Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61
mobile/rho-android/android/app/proguard-rules.pro
mobile/rho-android/android/app/src/androidTest/java/com/getcapacitor/myapp/ExampleInstrumentedTest.java
- Network accessline 12
* Instrumented test, which will execute on an Android device. * * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - Network accessline 13
* * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> */ - Network accessline 14
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
mobile/rho-android/android/app/src/main/AndroidManifest.xml
mobile/rho-android/android/app/src/main/java/dev/rhobot/rhoandroid/MainActivity.java
mobile/rho-android/android/app/src/main/res/drawable-v24/ic_launcher_foreground.xml
mobile/rho-android/android/app/src/main/res/drawable/ic_launcher_background.xml
mobile/rho-android/android/app/src/main/res/layout/activity_main.xml
- Network accessline 1
<?xml version="1.0" encoding="utf-8"?> <androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" - Network accessline 2
<androidx.coordinatorlayout.widget.CoordinatorLayout xmlns:android="http://schemas.android.com/apk/res/android" - Network accessline 3
xmlns:app="http://schemas.android.com/apk/res-auto" - Network accessline 4
xmlns:tools="http://schemas.android.com/tools"
mobile/rho-android/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml
mobile/rho-android/android/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml
mobile/rho-android/android/app/src/main/res/xml/file_paths.xml
mobile/rho-android/android/app/src/test/java/com/getcapacitor/myapp/ExampleUnitTest.java
- Network accessline 8
* Example local unit test, which will execute on the development machine (host). * * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> - Network accessline 9
* * @see <a href="http://d.android.com/tools/testing">Testing documentation</a> */ - Network accessline 10
* @see <a href="http://d.android.com/tools/testing">Testing documentation</a>
mobile/rho-android/android/gradle.properties
- Network accessline 7
# For more details on how to configure your build environment visit # http://www.gradle.org/docs/current/userguide/build_environment.html - Network accessline 8
# http://www.gradle.org/docs/current/userguide/build_environment.html - Network accessline 14
# When configured, Gradle will run in incubating parallel mode. # This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects - Network accessline 15
# This option should only be used with decoupled projects. More details, visit # http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects # org.gradle.parallel=true - Network accessline 16
# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects - Network accessline 19
# AndroidX package structure to make it clearer which packages are bundled with the # Android operating system, and which are packaged with your app's APK # https://developer.android.com/topic/libraries/support-library/androidx-rn - Network accessline 20
# Android operating system, and which are packaged with your app's APK # https://developer.android.com/topic/libraries/support-library/androidx-rn android.useAndroidX=true - Network accessline 21
# https://developer.android.com/topic/libraries/support-library/androidx-rn
mobile/rho-android/android/gradlew
- Executable scriptline 1
#!/bin/sh - Network accessline 8
# You may obtain a copy of the License at # # https://www.apache.org/licenses/LICENSE-2.0 - Network accessline 9
# # https://www.apache.org/licenses/LICENSE-2.0 # - Network accessline 10
# https://www.apache.org/licenses/LICENSE-2.0 - Network accessline 56
# # (3) This script is generated from the Groovy template # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt - Network accessline 57
# (3) This script is generated from the Groovy template # https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt # within the Gradle project. - Network accessline 58
# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt - Network accessline 59
# within the Gradle project. # # You can find Gradle at https://github.com/gradle/gradle/. - Network accessline 60
# # You can find Gradle at https://github.com/gradle/gradle/. # - Network accessline 61
# You can find Gradle at https://github.com/gradle/gradle/.
mobile/rho-android/android/gradlew.bat
- Executable scriptline 1
Executable file - Network accessline 6
@rem You may obtain a copy of the License at @rem @rem https://www.apache.org/licenses/LICENSE-2.0 - Network accessline 7
@rem @rem https://www.apache.org/licenses/LICENSE-2.0 @rem - Network accessline 8
@rem https://www.apache.org/licenses/LICENSE-2.0
mobile/rho-android/capacitor.config.ts
- Executable scriptline 1
Executable file
mobile/rho-android/fastlane/metadata/android/contact_website.txt
- Network accessline 1
https://github.com/mikeyobrien/rho
mobile/rho-android/fastlane/metadata/android/privacy_url.txt
- Network accessline 1
https://github.com/mikeyobrien/rho/blob/main/docs/rho-android-privacy-policy.md
mobile/rho-android/jest.config.js
- Executable scriptline 1
Executable file
mobile/rho-android/package-lock.json
- Network accessline 25
"node_modules/@babel/code-frame": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", - Network accessline 26
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", "integrity": "sha512-9NhCeYjq9+3uxgdtp20LSiJXJvN0FeCtNGpJxuMFZ1Kv3cWUNb6DOhJwUvcVCzKGR66cw4njwM6hrJLqgOwbcw==", - Network accessline 27
"resolved": "https://registry.npmjs.org/@babel/code-frame/-/code-frame-7.29.0.tgz", - Network accessline 40
"node_modules/@babel/compat-data": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - Network accessline 41
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", "integrity": "sha512-T1NCJqT/j9+cn8fvkt7jtwbLBfLC/1y1c7NtCeXFRgzGTsafi68MRv8yzkYSapBnFA6L3U2VSc02ciDzoAJhJg==", - Network accessline 42
"resolved": "https://registry.npmjs.org/@babel/compat-data/-/compat-data-7.29.0.tgz", - Network accessline 50
"node_modules/@babel/core": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", - Network accessline 51
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", "integrity": "sha512-CGOfOJqWjg2qW/Mb6zNsDm+u5vFQ8DxXfbM09z69p5Z6+mE1ikP2jUXw+j42Pf1XTYED2Rni5f95npYeuwMDQA==", - Network accessline 52
"resolved": "https://registry.npmjs.org/@babel/core/-/core-7.29.0.tgz", - Network accessline 76
"funding": { "type": "opencollective", "url": "https://opencollective.com/babel" - Network accessline 77
"type": "opencollective", "url": "https://opencollective.com/babel" } - Network accessline 78
"url": "https://opencollective.com/babel" - Network accessline 81
"node_modules/@babel/core/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - Network accessline 82
"version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - Network accessline 83
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - Network accessline 91
"node_modules/@babel/generator": { "version": "7.29.1", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", - Network accessline 92
"version": "7.29.1", "resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", "integrity": "sha512-qsaF+9Qcm2Qv8SRIMMscAvG4O3lJ0F1GuMo5HR/Bp02LopNgnZBC/EkbevHFeGs4ls/oPz9v+Bsmzbkbe+0dUw==", - Network accessline 93
"resolved": "https://registry.npmjs.org/@babel/generator/-/generator-7.29.1.tgz", - Network accessline 108
"node_modules/@babel/helper-compilation-targets": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - Network accessline 109
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", "integrity": "sha512-JYtls3hqi15fcx5GaSNL7SCTJ2MNmjrkHXg4FSpOA/grxK8KwyZ5bubHsCq8FXCkua6xhu - Network accessline 110
"resolved": "https://registry.npmjs.org/@babel/helper-compilation-targets/-/helper-compilation-targets-7.28.6.tgz", - Network accessline 125
"node_modules/@babel/helper-compilation-targets/node_modules/lru-cache": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - Network accessline 126
"version": "5.1.1", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", "integrity": "sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==", - Network accessline 127
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-5.1.1.tgz", - Network accessline 135
"node_modules/@babel/helper-compilation-targets/node_modules/semver": { "version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - Network accessline 136
"version": "6.3.1", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", "integrity": "sha512-BR7VvDCVHO+q2xBEWskxS6DJE1qRnb7DxzUrogb71CWoSficBxYsiAGd+Kl0mmq/MprG9yArRkyrQxTO6XjMzA==", - Network accessline 137
"resolved": "https://registry.npmjs.org/semver/-/semver-6.3.1.tgz", - Network accessline 145
"node_modules/@babel/helper-compilation-targets/node_modules/yallist": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - Network accessline 146
"version": "3.1.1", "resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", "integrity": "sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==", - Network accessline 147
"resolved": "https://registry.npmjs.org/yallist/-/yallist-3.1.1.tgz", - Network accessline 152
"node_modules/@babel/helper-globals": { "version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - Network accessline 153
"version": "7.28.0", "resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", "integrity": "sha512-+W6cISkXFa1jXsDEdYA8HeevQT/FULhxzR99pxphltZcVaugps53THCeiWA8SguxxpSp3gKPiuYfSWopkLQ4hw==", - Network accessline 154
"resolved": "https://registry.npmjs.org/@babel/helper-globals/-/helper-globals-7.28.0.tgz", - Network accessline 162
"node_modules/@babel/helper-module-imports": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", - Network accessline 163
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", "integrity": "sha512-l5XkZK7r7wa9LucGw9LwZyyCUscb4x37JWTPz7swwFE/0FMQAGpiWUZn8u9DzkSBWEcK25jmvubfpw2d - Network accessline 164
"resolved": "https://registry.npmjs.org/@babel/helper-module-imports/-/helper-module-imports-7.28.6.tgz", - Network accessline 176
"node_modules/@babel/helper-module-transforms": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - Network accessline 177
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", "integrity": "sha512-67oXFAYr2cDLDVGLXTEABjdBJZ6drElUSI7WKp70NrpyISso3plG9SAGEF6y7zbha/wOzUByWW - Network accessline 178
"resolved": "https://registry.npmjs.org/@babel/helper-module-transforms/-/helper-module-transforms-7.28.6.tgz", - Network accessline 194
"node_modules/@babel/helper-plugin-utils": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", - Network accessline 195
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", "integrity": "sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/D - Network accessline 196
"resolved": "https://registry.npmjs.org/@babel/helper-plugin-utils/-/helper-plugin-utils-7.28.6.tgz", - Network accessline 204
"node_modules/@babel/helper-string-parser": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - Network accessline 205
"version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", "integrity": "sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbW - Network accessline 206
"resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.27.1.tgz", - Network accessline 214
"node_modules/@babel/helper-validator-identifier": { "version": "7.28.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - Network accessline 215
"version": "7.28.5", "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", "integrity": "sha512-qSs4ifwzKJSV39ucNjsvc6WVHs6b7S03sOh2OcHF9UHfVPqWWALUsNUVzhSBiItjRZoL - Network accessline 216
"resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.28.5.tgz", - Network accessline 224
"node_modules/@babel/helper-validator-option": { "version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - Network accessline 225
"version": "7.27.1", "resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", "integrity": "sha512-YvjJow9FxbhFFKDSuFnVCe2WxXk1zWc22fFePVNEaWJEu8IrZVlda6N0uHwzZrUM1il7NC9Mlp4M - Network accessline 226
"resolved": "https://registry.npmjs.org/@babel/helper-validator-option/-/helper-validator-option-7.27.1.tgz", - Network accessline 234
"node_modules/@babel/helpers": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - Network accessline 235
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", "integrity": "sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==", - Network accessline 236
"resolved": "https://registry.npmjs.org/@babel/helpers/-/helpers-7.28.6.tgz", - Network accessline 248
"node_modules/@babel/parser": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", - Network accessline 249
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", "integrity": "sha512-IyDgFV5GeDUVX4YdF/3CPULtVGSXXMLh1xVIgdCgxApktqnQV0r7/8Nqthg+8YLGaAtdyIlo2qIdZrbCv4+7ww==", - Network accessline 250
"resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.29.0.tgz", - Network accessline 264
"node_modules/@babel/plugin-syntax-async-generators": { "version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - Network accessline 265
"version": "7.8.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", "integrity": "sha512-tycmZxkGfZaxhMRbXlPXuVFpdWlXpir2W4AMhSJgRKzk/eDlIXOhb2LHWoLpDF7T - Network accessline 266
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-async-generators/-/plugin-syntax-async-generators-7.8.4.tgz", - Network accessline 277
"node_modules/@babel/plugin-syntax-bigint": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - Network accessline 278
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", "integrity": "sha512-wnTnFlG+YxQm3vDxpGE57Pj0srRU4sHE/mDkt1qv2YJJSeUAec2ma4WLUnUPeKjyrfntVwe/N6dCXpU+zL3N - Network accessline 279
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-bigint/-/plugin-syntax-bigint-7.8.3.tgz", - Network accessline 290
"node_modules/@babel/plugin-syntax-class-properties": { "version": "7.12.13", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - Network accessline 291
"version": "7.12.13", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", "integrity": "sha512-fm4idjKla0YahUNgFNLCB0qySdsoPiZP3iQE3rky0mBUtMZ23yDJ9SJdg6dX - Network accessline 292
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-properties/-/plugin-syntax-class-properties-7.12.13.tgz", - Network accessline 303
"node_modules/@babel/plugin-syntax-class-static-block": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - Network accessline 304
"version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iu - Network accessline 305
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", - Network accessline 319
"node_modules/@babel/plugin-syntax-import-attributes": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", - Network accessline 320
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", "integrity": "sha512-jiLC0ma9XkQT3TKJ9uYvlakm66Pamywo+qwL+oL8HJOvc6TWdZXVfhqJr8CC - Network accessline 321
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-attributes/-/plugin-syntax-import-attributes-7.28.6.tgz", - Network accessline 335
"node_modules/@babel/plugin-syntax-import-meta": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - Network accessline 336
"version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", "integrity": "sha512-Yqfm+XDx0+Prh3VSeEQCPU81yC+JWZ2pDPFSS4ZdpfZhp4MkFMaDC1UqseovEKwSUpnIL7+v - Network accessline 337
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-import-meta/-/plugin-syntax-import-meta-7.10.4.tgz", - Network accessline 348
"node_modules/@babel/plugin-syntax-json-strings": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - Network accessline 349
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", "integrity": "sha512-lY6kdGpWHvjoe2vk4WrAapEuBR69EMxZl+RoGRhrFGNYVK8mOPAW8VfbT/ZgrFbXlDNiiaxQ - Network accessline 350
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-json-strings/-/plugin-syntax-json-strings-7.8.3.tgz", - Network accessline 361
"node_modules/@babel/plugin-syntax-jsx": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz", - Network accessline 362
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz", "integrity": "sha512-wgEmr06G6sIpqr8YDwA2dSRTE3bJ+V0IfpzfSY3Lfgd7YWOaAdlykvJi13ZKBt8cZHfgH1IXN+CL656W3uUa4w== - Network accessline 363
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-jsx/-/plugin-syntax-jsx-7.28.6.tgz", - Network accessline 377
"node_modules/@babel/plugin-syntax-logical-assignment-operators": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10 - Network accessline 378
"version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", "integrity": "sha512-d8waShlpFDinQ5MtvGU9xDAOzKH47+FFoney2b - Network accessline 379
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-logical-assignment-operators/-/plugin-syntax-logical-assignment-operators-7.10.4.tgz", - Network accessline 390
"node_modules/@babel/plugin-syntax-nullish-coalescing-operator": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tg - Network accessline 391
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", "integrity": "sha512-aSff4zPII1u2QD7y+F8oDsz19ew4IGEJg9SVW+bqwp - Network accessline 392
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-nullish-coalescing-operator/-/plugin-syntax-nullish-coalescing-operator-7.8.3.tgz", - Network accessline 403
"node_modules/@babel/plugin-syntax-numeric-separator": { "version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - Network accessline 404
"version": "7.10.4", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", "integrity": "sha512-9H6YdfkcK/uOnY/K7/aA2xpzaAgkQn37yzWUMRK7OaPOqOpGS1+n0H5hxT9A - Network accessline 405
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-numeric-separator/-/plugin-syntax-numeric-separator-7.10.4.tgz", - Network accessline 416
"node_modules/@babel/plugin-syntax-object-rest-spread": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - Network accessline 417
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", "integrity": "sha512-XoqMijGZb9y3y2XskN+P1wUGiVwWZ5JmoDRwx5+3GmEplNyVM2s2Dg8ILFQm - Network accessline 418
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-object-rest-spread/-/plugin-syntax-object-rest-spread-7.8.3.tgz", - Network accessline 429
"node_modules/@babel/plugin-syntax-optional-catch-binding": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - Network accessline 430
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", "integrity": "sha512-6VPD0Pc1lpTqw0aKoeRTMiB+kWhAoT24PA+ksWSBrFtl5SIRVpZl - Network accessline 431
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-catch-binding/-/plugin-syntax-optional-catch-binding-7.8.3.tgz", - Network accessline 442
"node_modules/@babel/plugin-syntax-optional-chaining": { "version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - Network accessline 443
"version": "7.8.3", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", "integrity": "sha512-KoK9ErH1MBlCPxV0VANkXW2/dw4vlbGDrFgz8bmUsBGYkFRcbRwMh6cIJubdPr - Network accessline 444
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-optional-chaining/-/plugin-syntax-optional-chaining-7.8.3.tgz", - Network accessline 455
"node_modules/@babel/plugin-syntax-private-property-in-object": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz - Network accessline 456
"version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnv - Network accessline 457
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", - Network accessline 471
"node_modules/@babel/plugin-syntax-top-level-await": { "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - Network accessline 472
"version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", "integrity": "sha512-hx++upLv5U1rgYfwe1xBQUhRmU41NEvpUvrp8jkrSCdvGSnM5/qdRMtylJ6PG5OF - Network accessline 473
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-top-level-await/-/plugin-syntax-top-level-await-7.14.5.tgz", - Network accessline 487
"node_modules/@babel/plugin-syntax-typescript": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz", - Network accessline 488
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz", "integrity": "sha512-+nDNmQye7nlnuuHDboPbGm00Vqg3oO8niRRL27/4LYHUsHYh0zJ1xWOz0uRwNFmM1Avzk8wZbc - Network accessline 489
"resolved": "https://registry.npmjs.org/@babel/plugin-syntax-typescript/-/plugin-syntax-typescript-7.28.6.tgz", - Network accessline 503
"node_modules/@babel/template": { "version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - Network accessline 504
"version": "7.28.6", "resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", "integrity": "sha512-YA6Ma2KsCdGb+WC6UpBVFJGXL58MDA6oyONbjyF/+5sBgxY/dwkhLogbMT2GXXyU84/IhRw/2D1Os1B/giz+BQ==", - Network accessline 505
"resolved": "https://registry.npmjs.org/@babel/template/-/template-7.28.6.tgz", - Network accessline 518
"node_modules/@babel/traverse": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", - Network accessline 519
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", "integrity": "sha512-4HPiQr0X7+waHfyXPZpWPfWL/J7dcN1mx9gL6WdQVMbPnF3+ZhSMs8tCxN7oHddJE9fhNE7+lxdnlyemKfJRuA==", - Network accessline 520
"resolved": "https://registry.npmjs.org/@babel/traverse/-/traverse-7.29.0.tgz", - Network accessline 537
"node_modules/@babel/types": { "version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", - Network accessline 538
"version": "7.29.0", "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", "integrity": "sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==", - Network accessline 539
"resolved": "https://registry.npmjs.org/@babel/types/-/types-7.29.0.tgz", - Network accessline 551
"node_modules/@bcoe/v8-coverage": { "version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - Network accessline 552
"version": "0.2.3", "resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", "integrity": "sha512-0hYQ8SB4Db5zvZB4axdMHGwEaQjkZzFjQiN9LVYvIFB2nSUHW9tYpxWriPrWDASIxiaXax83REcLxuSdnGPZtw==", - Network accessline 553
"resolved": "https://registry.npmjs.org/@bcoe/v8-coverage/-/v8-coverage-0.2.3.tgz", - Network accessline 558
"node_modules/@capacitor/android": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.2.1.tgz", - Network accessline 559
"version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.2.1.tgz", "integrity": "sha512-8gd4CIiQO5LAIlPIfd5mCuodBRxMMdZZEdj8qG8m+dQ1sQ2xyemVpzHmRK8qSCHorsBUCg3D62j2cp6bEBAkdw==", - Network accessline 560
"resolved": "https://registry.npmjs.org/@capacitor/android/-/android-6.2.1.tgz", - Network accessline 568
"node_modules/@capacitor/cli": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-6.2.1.tgz", - Network accessline 569
"version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-6.2.1.tgz", "integrity": "sha512-JKl0FpFge8PgQNInw12kcKieQ4BmOyazQ4JGJOfEpVXlgrX1yPhSZTPjngupzTCiK3I7q7iGG5kjun0fDqgSCA==", - Network accessline 570
"resolved": "https://registry.npmjs.org/@capacitor/cli/-/cli-6.2.1.tgz", - Network accessline 601
"node_modules/@capacitor/core": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.2.1.tgz", - Network accessline 602
"version": "6.2.1", "resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.2.1.tgz", "integrity": "sha512-urZwxa7hVE/BnA18oCFAdizXPse6fCKanQyEqpmz6cBJ2vObwMpyJDG5jBeoSsgocS9+Ax+9vb4ducWJn0y2qQ==", - Network accessline 603
"resolved": "https://registry.npmjs.org/@capacitor/core/-/core-6.2.1.tgz", - Network accessline 610
"node_modules/@capacitor/preferences": { "version": "6.0.4", "resolved": "https://registry.npmjs.org/@capacitor/preferences/-/preferences-6.0.4.tgz", - Network accessline 611
"version": "6.0.4", "resolved": "https://registry.npmjs.org/@capacitor/preferences/-/preferences-6.0.4.tgz", "integrity": "sha512-ziauSI1pgdyl+gduvvf8lInvzF3Wdyu/ok+u7NlnhKp8XOj9plJgtnXZWFiR8CiCK5wMvo+gFaNh3zhMyEUwpA==", - Network accessline 612
"resolved": "https://registry.npmjs.org/@capacitor/preferences/-/preferences-6.0.4.tgz", - Network accessline 619
"node_modules/@cspotcode/source-map-support": { "version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - Network accessline 620
"version": "0.8.1", "resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", "integrity": "sha512-IchNf6dN4tHoMFIn/7OE8LWZ19Y6q/67Bmf6vnGREv8RSbBVb9LPJxEcnwrcwX6ixSvaiGoomAUvu4YSxXrV - Network accessline 621
"resolved": "https://registry.npmjs.org/@cspotcode/source-map-support/-/source-map-support-0.8.1.tgz", - Network accessline 632
"node_modules/@cspotcode/source-map-support/node_modules/@jridgewell/trace-mapping": { "version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - Network accessline 633
"version": "0.3.9", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", "integrity": "sha512-3Belt6tdc8bPgAtbcmdtNJlirVoTmEb5e2gC94PnkwEW9jI6CAHUeoG85tjWP5WquqfavoMtMwiG4P926ZKKuQ==", - Network accessline 634
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.9.tgz", - Network accessline 643
"node_modules/@emnapi/core": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", - Network accessline 644
"version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", "integrity": "sha512-AvT9QFpxK0Zd8J0jopedNm+w/2fIzvtPKPjqyw9jwvBaReTTqPBk9Hixaz7KbjimP+QNz605/XnjFcDAL2pqBg==", - Network accessline 645
"resolved": "https://registry.npmjs.org/@emnapi/core/-/core-1.8.1.tgz", - Network accessline 655
"node_modules/@emnapi/runtime": { "version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", - Network accessline 656
"version": "1.8.1", "resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", "integrity": "sha512-mehfKSMWjjNol8659Z8KxEMrdSJDDot5SXMq00dM8BN4o+CLNXQ0xH2V7EchNHV4RmbZLmmPdEaXZc5H2FXmDg==", - Network accessline 657
"resolved": "https://registry.npmjs.org/@emnapi/runtime/-/runtime-1.8.1.tgz", - Network accessline 666
"node_modules/@emnapi/wasi-threads": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - Network accessline 667
"version": "1.1.0", "resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", "integrity": "sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==", - Network accessline 668
"resolved": "https://registry.npmjs.org/@emnapi/wasi-threads/-/wasi-threads-1.1.0.tgz", - Network accessline 677
"node_modules/@ionic/cli-framework-output": { "version": "2.2.8", "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", - Network accessline 678
"version": "2.2.8", "resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", "integrity": "sha512-TshtaFQsovB4NWRBydbNFawql6yul7d5bMiW1WYYf17hd99V6xdDdk3vtF51bw6sLkxON3bDQpWsnUc9/hVo - Network accessline 679
"resolved": "https://registry.npmjs.org/@ionic/cli-framework-output/-/cli-framework-output-2.2.8.tgz", - Network accessline 692
"node_modules/@ionic/utils-array": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.5.tgz", - Network accessline 693
"version": "2.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.5.tgz", "integrity": "sha512-HD72a71IQVBmQckDwmA8RxNVMTbxnaLbgFOl+dO5tbvW9CkkSFCv41h6fUuNsSEVgngfkn0i98HDuZC8mk+lTA==", - Network accessline 694
"resolved": "https://registry.npmjs.org/@ionic/utils-array/-/utils-array-2.1.5.tgz", - Network accessline 706
"node_modules/@ionic/utils-fs": { "version": "3.1.7", "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", - Network accessline 707
"version": "3.1.7", "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", "integrity": "sha512-2EknRvMVfhnyhL1VhFkSLa5gOcycK91VnjfrTB0kbqkTFCOXyXgVLI5whzq7SLrgD9t1aqos3lMMQyVzaQ5gVA==", - Network accessline 708
"resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.7.tgz", - Network accessline 722
"node_modules/@ionic/utils-object": { "version": "2.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.5.tgz", - Network accessline 723
"version": "2.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.5.tgz", "integrity": "sha512-XnYNSwfewUqxq+yjER1hxTKggftpNjFLJH0s37jcrNDwbzmbpFTQTVAp4ikNK4rd9DOebX/jbeZb8jfD86IYxw==", - Network accessline 724
"resolved": "https://registry.npmjs.org/@ionic/utils-object/-/utils-object-2.1.5.tgz", - Network accessline 736
"node_modules/@ionic/utils-process": { "version": "2.1.10", "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.10.tgz", - Network accessline 737
"version": "2.1.10", "resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.10.tgz", "integrity": "sha512-mZ7JEowcuGQK+SKsJXi0liYTcXd2bNMR3nE0CyTROpMECUpJeAvvaBaPGZf5ERQUPeWBVuwqAqjUmIdxhz5bxw==", - Network accessline 738
"resolved": "https://registry.npmjs.org/@ionic/utils-process/-/utils-process-2.1.10.tgz", - Network accessline 754
"node_modules/@ionic/utils-process/node_modules/@ionic/utils-terminal": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", - Network accessline 755
"version": "2.3.3", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", "integrity": "sha512-RnuSfNZ5fLEyX3R5mtcMY97cGD1A0NVBbarsSQ6yMMfRJ5YHU7hHVyUfvZeClbqkBC/pAqI/rYJuXKCT9YeMCQ==", - Network accessline 756
"resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", - Network accessline 775
"node_modules/@ionic/utils-stream": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.5.tgz", - Network accessline 776
"version": "3.1.5", "resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.5.tgz", "integrity": "sha512-hkm46uHvEC05X/8PHgdJi4l4zv9VQDELZTM+Kz69odtO9zZYfnt8DkfXHJqJ+PxmtiE5mk/ehJWLnn/XAczTUw==", - Network accessline 777
"resolved": "https://registry.npmjs.org/@ionic/utils-stream/-/utils-stream-3.1.5.tgz", - Network accessline 789
"node_modules/@ionic/utils-subprocess": { "version": "2.1.11", "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-2.1.11.tgz", - Network accessline 790
"version": "2.1.11", "resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-2.1.11.tgz", "integrity": "sha512-6zCDixNmZCbMCy5np8klSxOZF85kuDyzZSTTQKQP90ZtYNCcPYmuFSzaqDwApJT4r5L3MY3JrqK1gLkc6xiUPw==", - Network accessline 791
"resolved": "https://registry.npmjs.org/@ionic/utils-subprocess/-/utils-subprocess-2.1.11.tgz", - Network accessline 809
"node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-fs": { "version": "3.1.6", "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.6.tgz", - Network accessline 810
"version": "3.1.6", "resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.6.tgz", "integrity": "sha512-eikrNkK89CfGPmexjTfSWl4EYqsPSBh0Ka7by4F0PLc1hJZYtJxUZV3X4r5ecA8ikjicUmcbU7zJmAjmqutG/w==", - Network accessline 811
"resolved": "https://registry.npmjs.org/@ionic/utils-fs/-/utils-fs-3.1.6.tgz", - Network accessline 825
"node_modules/@ionic/utils-subprocess/node_modules/@ionic/utils-terminal": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", - Network accessline 826
"version": "2.3.3", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", "integrity": "sha512-RnuSfNZ5fLEyX3R5mtcMY97cGD1A0NVBbarsSQ6yMMfRJ5YHU7hHVyUfvZeClbqkBC/pAqI/rYJuXKCT9YeMCQ==", - Network accessline 827
"resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.3.tgz", - Network accessline 846
"node_modules/@ionic/utils-terminal": { "version": "2.3.5", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", - Network accessline 847
"version": "2.3.5", "resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", "integrity": "sha512-3cKScz9Jx2/Pr9ijj1OzGlBDfcmx7OMVBt4+P1uRR0SSW4cm1/y3Mo4OY3lfkuaYifMNBW8Wz6lQHbs1bihr7A==", - Network accessline 848
"resolved": "https://registry.npmjs.org/@ionic/utils-terminal/-/utils-terminal-2.3.5.tgz", - Network accessline 867
"node_modules/@isaacs/cliui": { "version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - Network accessline 868
"version": "8.0.2", "resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", "integrity": "sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==", - Network accessline 869
"resolved": "https://registry.npmjs.org/@isaacs/cliui/-/cliui-8.0.2.tgz", - Network accessline 885
"node_modules/@isaacs/cliui/node_modules/ansi-regex": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", - Network accessline 886
"version": "6.2.2", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", "integrity": "sha512-Bq3SmSpyFHaWjPk8If9yc6svM8c56dB5BAtW4Qbw5jHTwwXXcTLoRMkpDJp6VL0XzlWaCHTXrkFURMYmD0sLqg==", - Network accessline 887
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.2.2.tgz", - Network accessline 893
}, "funding": { "url": "https://github.com/chalk/ansi-regex?sponsor=1" - Network accessline 894
"funding": { "url": "https://github.com/chalk/ansi-regex?sponsor=1" } - Network accessline 895
"url": "https://github.com/chalk/ansi-regex?sponsor=1" - Network accessline 898
"node_modules/@isaacs/cliui/node_modules/ansi-styles": { "version": "6.2.3", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", - Network accessline 899
"version": "6.2.3", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", "integrity": "sha512-4Dj6M28JB+oAH8kFkTLUo+a2jwOFkuqb3yucU0CANcRRUbxS0cP0nZYCGjcc3BNXwRIsUVmDGgzawme7zvJHvg==", - Network accessline 900
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-6.2.3.tgz", - Network accessline 906
}, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 907
"funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" } - Network accessline 908
"url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 911
"node_modules/@isaacs/cliui/node_modules/emoji-regex": { "version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - Network accessline 912
"version": "9.2.2", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==", - Network accessline 913
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz", - Network accessline 918
"node_modules/@isaacs/cliui/node_modules/string-width": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - Network accessline 919
"version": "5.1.2", "resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", "integrity": "sha512-HnLOCR3vjcY8beoNLtcjZ5/nxn2afmME6lhrDrebokqMap+XbeW8n9TXpPDOqdGK5qcI3oT0GKTW6wC7EMiVqA==", - Network accessline 920
"resolved": "https://registry.npmjs.org/string-width/-/string-width-5.1.2.tgz", - Network accessline 931
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 932
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 933
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 936
"node_modules/@isaacs/cliui/node_modules/strip-ansi": { "version": "7.1.2", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", - Network accessline 937
"version": "7.1.2", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", "integrity": "sha512-gmBGslpoQJtgnMAvOVqGZpEz9dyoKTCzy2nfz/n8aIFhN/jCE/rCmcxabB6jOOHV+0WNnylOxaxBQPSvcWklhA==", - Network accessline 938
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.2.tgz", - Network accessline 947
}, "funding": { "url": "https://github.com/chalk/strip-ansi?sponsor=1" - Network accessline 948
"funding": { "url": "https://github.com/chalk/strip-ansi?sponsor=1" } - Network accessline 949
"url": "https://github.com/chalk/strip-ansi?sponsor=1" - Network accessline 952
"node_modules/@isaacs/cliui/node_modules/wrap-ansi": { "version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - Network accessline 953
"version": "8.1.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", "integrity": "sha512-si7QWI6zUMq56bESFvagtmzMdGOtoxfR+Sez11Mobfc7tm+VkUckk9bW2UeffTGVUbOksxmSw0AA2gs8g71NCQ==", - Network accessline 954
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-8.1.0.tgz", - Network accessline 965
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 966
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 967
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 970
"node_modules/@istanbuljs/load-nyc-config": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - Network accessline 971
"version": "1.1.0", "resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", "integrity": "sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==" - Network accessline 972
"resolved": "https://registry.npmjs.org/@istanbuljs/load-nyc-config/-/load-nyc-config-1.1.0.tgz", - Network accessline 987
"node_modules/@istanbuljs/schema": { "version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - Network accessline 988
"version": "0.1.3", "resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", "integrity": "sha512-ZXRY4jNvVgSVQ8DL3LTcakaAtXwTVUxE81hslsyD2AtoXW/wVob10HkOJ1X/pAlcI7D+2YoZKg5do8G/w6RYgA==", - Network accessline 989
"resolved": "https://registry.npmjs.org/@istanbuljs/schema/-/schema-0.1.3.tgz", - Network accessline 997
"node_modules/@jest/console": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz", - Network accessline 998
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz", "integrity": "sha512-+O1ifRjkvYIkBqASKWgLxrpEhQAAE7hY77ALLUufSk5717KfOShg6IbqLmdsLMPdUiFvA2kTs0R7YZy+l0IzZQ==", - Network accessline 999
"resolved": "https://registry.npmjs.org/@jest/console/-/console-30.2.0.tgz", - Network accessline 1015
"node_modules/@jest/core": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz", - Network accessline 1016
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz", "integrity": "sha512-03W6IhuhjqTlpzh/ojut/pDB2LPRygyWX8ExpgHtQA8H/3K7+1vKmcINx5UzeOX1se6YEsBsOHQ1CRzf3fOwTQ==", - Network accessline 1017
"resolved": "https://registry.npmjs.org/@jest/core/-/core-30.2.0.tgz", - Network accessline 1063
"node_modules/@jest/diff-sequences": { "version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz", - Network accessline 1064
"version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz", "integrity": "sha512-n5H8QLDJ47QqbCNn5SuFjCRDrOLEZ0h8vAHCK5RL9Ls7Xa8AQLa/YxAc9UjFqoEDM48muwtBGjtMY5cr0PLDCw==", - Network accessline 1065
"resolved": "https://registry.npmjs.org/@jest/diff-sequences/-/diff-sequences-30.0.1.tgz", - Network accessline 1073
"node_modules/@jest/environment": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz", - Network accessline 1074
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz", "integrity": "sha512-/QPTL7OBJQ5ac09UDRa3EQes4gt1FTEG/8jZ/4v5IVzx+Cv7dLxlVIvfvSVRiiX2drWyXeBjkMSR8hvOWSog5g==", - Network accessline 1075
"resolved": "https://registry.npmjs.org/@jest/environment/-/environment-30.2.0.tgz", - Network accessline 1089
"node_modules/@jest/expect": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz", - Network accessline 1090
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz", "integrity": "sha512-V9yxQK5erfzx99Sf+7LbhBwNWEZ9eZay8qQ9+JSC0TrMR1pMDHLMY+BnVPacWU6Jamrh252/IKo4F1Xn/zfiqA==", - Network accessline 1091
"resolved": "https://registry.npmjs.org/@jest/expect/-/expect-30.2.0.tgz", - Network accessline 1103
"node_modules/@jest/expect-utils": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz", - Network accessline 1104
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz", "integrity": "sha512-1JnRfhqpD8HGpOmQp180Fo9Zt69zNtC+9lR+kT7NVL05tNXIi+QC8Csz7lfidMoVLPD3FnOtcmp0CEFnxExGEA==", - Network accessline 1105
"resolved": "https://registry.npmjs.org/@jest/expect-utils/-/expect-utils-30.2.0.tgz", - Network accessline 1116
"node_modules/@jest/fake-timers": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz", - Network accessline 1117
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz", "integrity": "sha512-HI3tRLjRxAbBy0VO8dqqm7Hb2mIa8d5bg/NJkyQcOk7V118ObQML8RC5luTF/Zsg4474a+gDvhce7eTnP4GhYw==", - Network accessline 1118
"resolved": "https://registry.npmjs.org/@jest/fake-timers/-/fake-timers-30.2.0.tgz", - Network accessline 1134
"node_modules/@jest/get-type": { "version": "30.1.0", "resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz", - Network accessline 1135
"version": "30.1.0", "resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz", "integrity": "sha512-eMbZE2hUnx1WV0pmURZY9XoXPkUYjpc55mb0CrhtdWLtzMQPFvu/rZkTLZFTsdaVQa+Tr4eWAteqcUzoawq/uA==", - Network accessline 1136
"resolved": "https://registry.npmjs.org/@jest/get-type/-/get-type-30.1.0.tgz", - Network accessline 1144
"node_modules/@jest/globals": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz", - Network accessline 1145
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz", "integrity": "sha512-b63wmnKPaK+6ZZfpYhz9K61oybvbI1aMcIs80++JI1O1rR1vaxHUCNqo3ITu6NU0d4V34yZFoHMn/uoKr/Rwfw==", - Network accessline 1146
"resolved": "https://registry.npmjs.org/@jest/globals/-/globals-30.2.0.tgz", - Network accessline 1160
"node_modules/@jest/pattern": { "version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.1.tgz", - Network accessline 1161
"version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.1.tgz", "integrity": "sha512-gWp7NfQW27LaBQz3TITS8L7ZCQ0TLvtmI//4OwlQRx4rnWxcPNIYjxZpDcN4+UlGxgm3jS5QPz8IPTCkb59wZA==", - Network accessline 1162
"resolved": "https://registry.npmjs.org/@jest/pattern/-/pattern-30.0.1.tgz", - Network accessline 1174
"node_modules/@jest/reporters": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz", - Network accessline 1175
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz", "integrity": "sha512-DRyW6baWPqKMa9CzeiBjHwjd8XeAyco2Vt8XbcLFjiwCOEKOvy82GJ8QQnJE9ofsxCMPjH4MfH8fCWIHHDKpAQ==", - Network accessline 1176
"resolved": "https://registry.npmjs.org/@jest/reporters/-/reporters-30.2.0.tgz", - Network accessline 1217
"node_modules/@jest/reporters/node_modules/glob": { "version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 1218
"version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", - Network accessline 1219
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 1234
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 1235
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 1236
"url": "https://github.com/sponsors/isaacs" - Network accessline 1239
"node_modules/@jest/reporters/node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 1240
"version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - Network accessline 1241
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 1250
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 1251
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 1252
"url": "https://github.com/sponsors/isaacs" - Network accessline 1255
"node_modules/@jest/reporters/node_modules/minipass": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 1256
"version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - Network accessline 1257
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 1265
"node_modules/@jest/schemas": { "version": "30.0.5", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz", - Network accessline 1266
"version": "30.0.5", "resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz", "integrity": "sha512-DmdYgtezMkh3cpU8/1uyXakv3tJRcmcXxBOcO0tbaozPwpmh4YMsnWrQm9ZmZMfa5ocbxzbFk6O4bDPEc/iAnA==", - Network accessline 1267
"resolved": "https://registry.npmjs.org/@jest/schemas/-/schemas-30.0.5.tgz", - Network accessline 1278
"node_modules/@jest/snapshot-utils": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz", - Network accessline 1279
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz", "integrity": "sha512-0aVxM3RH6DaiLcjj/b0KrIBZhSX1373Xci4l3cW5xiUWPctZ59zQ7jj4rqcJQ/Z8JuN/4wX3FpJSa3RssVvCug==", - Network accessline 1280
"resolved": "https://registry.npmjs.org/@jest/snapshot-utils/-/snapshot-utils-30.2.0.tgz", - Network accessline 1294
"node_modules/@jest/source-map": { "version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-30.0.1.tgz", - Network accessline 1295
"version": "30.0.1", "resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-30.0.1.tgz", "integrity": "sha512-MIRWMUUR3sdbP36oyNyhbThLHyJ2eEDClPCiHVbrYAe5g3CHRArIVpBw7cdSB5fr+ofSfIb2Tnsw8iEHL0PYQg==", - Network accessline 1296
"resolved": "https://registry.npmjs.org/@jest/source-map/-/source-map-30.0.1.tgz", - Network accessline 1309
"node_modules/@jest/test-result": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz", - Network accessline 1310
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz", "integrity": "sha512-RF+Z+0CCHkARz5HT9mcQCBulb1wgCP3FBvl9VFokMX27acKphwyQsNuWH3c+ojd1LeWBLoTYoxF0zm6S/66mjg==", - Network accessline 1311
"resolved": "https://registry.npmjs.org/@jest/test-result/-/test-result-30.2.0.tgz", - Network accessline 1325
"node_modules/@jest/test-sequencer": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz", - Network accessline 1326
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz", "integrity": "sha512-wXKgU/lk8fKXMu/l5Hog1R61bL4q5GCdT6OJvdAFz1P+QrpoFuLU68eoKuVc4RbrTtNnTL5FByhWdLgOPSph+Q==", - Network accessline 1327
"resolved": "https://registry.npmjs.org/@jest/test-sequencer/-/test-sequencer-30.2.0.tgz", - Network accessline 1341
"node_modules/@jest/transform": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz", - Network accessline 1342
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz", "integrity": "sha512-XsauDV82o5qXbhalKxD7p4TZYYdwcaEXC77PPD2HixEFF+6YGppjrAAQurTl2ECWcEomHBMMNS9AH3kcCFx8jA==", - Network accessline 1343
"resolved": "https://registry.npmjs.org/@jest/transform/-/transform-30.2.0.tgz", - Network accessline 1368
"node_modules/@jest/types": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz", - Network accessline 1369
"version": "30.2.0", "resolved": "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz", "integrity": "sha512-H9xg1/sfVvyfU7o3zMfBEjQ1gcsdeTMgqHoYdN79tuLqfTtuu7WckRA1R5whDwOzxaZAeMKTYWqP+WCAi0CHsg==", - Network accessline 1370
"resolved": "https://registry.npmjs.org/@jest/types/-/types-30.2.0.tgz", - Network accessline 1387
"node_modules/@jridgewell/gen-mapping": { "version": "0.3.13", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - Network accessline 1388
"version": "0.3.13", "resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", "integrity": "sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==", - Network accessline 1389
"resolved": "https://registry.npmjs.org/@jridgewell/gen-mapping/-/gen-mapping-0.3.13.tgz", - Network accessline 1398
"node_modules/@jridgewell/remapping": { "version": "2.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - Network accessline 1399
"version": "2.3.5", "resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", "integrity": "sha512-LI9u/+laYG4Ds1TDKSJW2YPrIlcVYOwi2fUC6xB43lueCjgxV4lffOCZCtYFiH6TNOX+tQKXx97T4IKHbhyHEQ==", - Network accessline 1400
"resolved": "https://registry.npmjs.org/@jridgewell/remapping/-/remapping-2.3.5.tgz", - Network accessline 1409
"node_modules/@jridgewell/resolve-uri": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - Network accessline 1410
"version": "3.1.2", "resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", "integrity": "sha512-bRISgCIjP20/tbWSPWMEi54QVPRZExkuD9lJL+UIxUKtwVJA8wW1Trb1jMs1RFXo1CBTNZ/5hpC9QvmKWdopKw==", - Network accessline 1411
"resolved": "https://registry.npmjs.org/@jridgewell/resolve-uri/-/resolve-uri-3.1.2.tgz", - Network accessline 1419
"node_modules/@jridgewell/sourcemap-codec": { "version": "1.5.5", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - Network accessline 1420
"version": "1.5.5", "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", "integrity": "sha512-cYQ9310grqxueWbl+WuIUIaiUaDcj7WOq5fVhEljNVgRfOUhY9fy2zTvfoqWsnebh8Sl70VScFbICvJnLKB0Og==" - Network accessline 1421
"resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.5.tgz", - Network accessline 1426
"node_modules/@jridgewell/trace-mapping": { "version": "0.3.31", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - Network accessline 1427
"version": "0.3.31", "resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", "integrity": "sha512-zzNR+SdQSDJzc8joaeP8QQoCQr8NuYx2dIIytl1QeBEZHJ9uW6hebsrYgbz8hJwUQao3TWCMtmfV8Nu1twOLAw==", - Network accessline 1428
"resolved": "https://registry.npmjs.org/@jridgewell/trace-mapping/-/trace-mapping-0.3.31.tgz", - Network accessline 1437
"node_modules/@napi-rs/wasm-runtime": { "version": "0.2.12", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", - Network accessline 1438
"version": "0.2.12", "resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", "integrity": "sha512-ZVWUcfwY4E/yPitQJl481FjFo3K22D6qF0DuFH6Y/nbnE11GY5uguDxZMGXPQ8WQ0128MXQD7TnfHyK4oWoIJQ==", - Network accessline 1439
"resolved": "https://registry.npmjs.org/@napi-rs/wasm-runtime/-/wasm-runtime-0.2.12.tgz", - Network accessline 1450
"node_modules/@pkgjs/parseargs": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - Network accessline 1451
"version": "0.11.0", "resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", "integrity": "sha512-+1VkjdD0QBLPodGrJUeqarH8VAIvQODIbwh9XpP5Syisf7YoQgsJKPNFoqqLQlu+VQ/tVSshMR6loPMn8U+dPg==", - Network accessline 1452
"resolved": "https://registry.npmjs.org/@pkgjs/parseargs/-/parseargs-0.11.0.tgz", - Network accessline 1461
"node_modules/@pkgr/core": { "version": "0.2.9", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", - Network accessline 1462
"version": "0.2.9", "resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", "integrity": "sha512-QNqXyfVS2wm9hweSYD2O7F0G06uurj9kZ96TRQE5Y9hU7+tgdZwIkbAKc5Ocy1HxEY2kuDQa6cQ1WRs/O5LFKA==", - Network accessline 1463
"resolved": "https://registry.npmjs.org/@pkgr/core/-/core-0.2.9.tgz", - Network accessline 1469
}, "funding": { "url": "https://opencollective.com/pkgr" - Network accessline 1470
"funding": { "url": "https://opencollective.com/pkgr" } - Network accessline 1471
"url": "https://opencollective.com/pkgr" - Network accessline 1474
"node_modules/@sinclair/typebox": { "version": "0.34.48", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", - Network accessline 1475
"version": "0.34.48", "resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", "integrity": "sha512-kKJTNuK3AQOrgjjotVxMrCn1sUJwM76wMszfq1kdU4uYVJjvEWuFQ6HgvLt4Xz3fSmZlTOxJ/Ie13KnIcWQXFA==", - Network accessline 1476
"resolved": "https://registry.npmjs.org/@sinclair/typebox/-/typebox-0.34.48.tgz", - Network accessline 1481
"node_modules/@sinonjs/commons": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - Network accessline 1482
"version": "3.0.1", "resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", "integrity": "sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==", - Network accessline 1483
"resolved": "https://registry.npmjs.org/@sinonjs/commons/-/commons-3.0.1.tgz", - Network accessline 1491
"node_modules/@sinonjs/fake-timers": { "version": "13.0.5", "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", - Network accessline 1492
"version": "13.0.5", "resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", "integrity": "sha512-36/hTbH2uaWuGVERyC6da9YwGWnzUZXuPro/F2LfsdOsLnCojz/iSH8MxUt/FD2S5XBSVPhmArFUXcpCQ2Hkiw==", - Network accessline 1493
"resolved": "https://registry.npmjs.org/@sinonjs/fake-timers/-/fake-timers-13.0.5.tgz", - Network accessline 1501
"node_modules/@tsconfig/node10": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz", - Network accessline 1502
"version": "1.0.12", "resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz", "integrity": "sha512-UCYBaeFvM11aU2y3YPZ//O5Rhj+xKyzy7mvcIoAjASbigy8mHMryP5cK7dgjlz2hWxh1g5pLw084E0a/wlUSFQ==", - Network accessline 1503
"resolved": "https://registry.npmjs.org/@tsconfig/node10/-/node10-1.0.12.tgz", - Network accessline 1508
"node_modules/@tsconfig/node12": { "version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - Network accessline 1509
"version": "1.0.11", "resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", "integrity": "sha512-cqefuRsh12pWyGsIoBKJA9luFu3mRxCA+ORZvA4ktLSzIuCUtWVxGIuXigEwO5/ywWFMZ2QEGKWvkZG1zDMTag==", - Network accessline 1510
"resolved": "https://registry.npmjs.org/@tsconfig/node12/-/node12-1.0.11.tgz", - Network accessline 1515
"node_modules/@tsconfig/node14": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - Network accessline 1516
"version": "1.0.3", "resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", "integrity": "sha512-ysT8mhdixWK6Hw3i1V2AeRqZ5WfXg1G43mqoYlM2nc6388Fq5jcXyr5mRsqViLx/GJYdoL0bfXD8nmF+Zn/Iow==", - Network accessline 1517
"resolved": "https://registry.npmjs.org/@tsconfig/node14/-/node14-1.0.3.tgz", - Network accessline 1522
"node_modules/@tsconfig/node16": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - Network accessline 1523
"version": "1.0.4", "resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", "integrity": "sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==", - Network accessline 1524
"resolved": "https://registry.npmjs.org/@tsconfig/node16/-/node16-1.0.4.tgz", - Network accessline 1529
"node_modules/@tybys/wasm-util": { "version": "0.10.1", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", - Network accessline 1530
"version": "0.10.1", "resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", "integrity": "sha512-9tTaPJLSiejZKx+Bmog4uSubteqTvFrVrURwkmHixBo0G4seD0zUxp98E1DzUBJxLQ3NPwXrGKDiVjwx/DpPsg==", - Network accessline 1531
"resolved": "https://registry.npmjs.org/@tybys/wasm-util/-/wasm-util-0.10.1.tgz", - Network accessline 1540
"node_modules/@types/babel__core": { "version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - Network accessline 1541
"version": "7.20.5", "resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", "integrity": "sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==", - Network accessline 1542
"resolved": "https://registry.npmjs.org/@types/babel__core/-/babel__core-7.20.5.tgz", - Network accessline 1554
"node_modules/@types/babel__generator": { "version": "7.27.0", "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - Network accessline 1555
"version": "7.27.0", "resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", "integrity": "sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==", - Network accessline 1556
"resolved": "https://registry.npmjs.org/@types/babel__generator/-/babel__generator-7.27.0.tgz", - Network accessline 1564
"node_modules/@types/babel__template": { "version": "7.4.4", "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - Network accessline 1565
"version": "7.4.4", "resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", "integrity": "sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==", - Network accessline 1566
"resolved": "https://registry.npmjs.org/@types/babel__template/-/babel__template-7.4.4.tgz", - Network accessline 1575
"node_modules/@types/babel__traverse": { "version": "7.28.0", "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - Network accessline 1576
"version": "7.28.0", "resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", "integrity": "sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==", - Network accessline 1577
"resolved": "https://registry.npmjs.org/@types/babel__traverse/-/babel__traverse-7.28.0.tgz", - Network accessline 1585
"node_modules/@types/fs-extra": { "version": "8.1.5", "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", - Network accessline 1586
"version": "8.1.5", "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", "integrity": "sha512-0dzKcwO+S8s2kuF5Z9oUWatQJj5Uq/iqphEtE3GQJVRRYm/tD1LglU2UnXi2A8jLq5umkGouOXOR9y0n613ZwQ==", - Network accessline 1587
"resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.5.tgz", - Network accessline 1595
"node_modules/@types/istanbul-lib-coverage": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - Network accessline 1596
"version": "2.0.6", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", "integrity": "sha512-2QF/t/auWm0lsy8XtKVPG19v3sSOQlJe/YHZgfjb/KBBHOGSV+J2q/S671rcq9uTBrLAXmZpqJiaQbMT+z - Network accessline 1597
"resolved": "https://registry.npmjs.org/@types/istanbul-lib-coverage/-/istanbul-lib-coverage-2.0.6.tgz", - Network accessline 1602
"node_modules/@types/istanbul-lib-report": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - Network accessline 1603
"version": "3.0.3", "resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", "integrity": "sha512-NQn7AHQnk/RSLOxrBbGyJM/aVQ+pjj5HCgasFxc0K/KhoATfQ/47AyUl15I2yBUpihjmas+a+VJBOqecrFH+uA - Network accessline 1604
"resolved": "https://registry.npmjs.org/@types/istanbul-lib-report/-/istanbul-lib-report-3.0.3.tgz", - Network accessline 1612
"node_modules/@types/istanbul-reports": { "version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - Network accessline 1613
"version": "3.0.4", "resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", "integrity": "sha512-pk2B1NWalF9toCRu6gjBzR69syFjP4Od8WRAX+0mmf9lAjCRicLOWc+ZrxZHx/0XRjotgkF9t6iaMJ+aXcOdZQ==", - Network accessline 1614
"resolved": "https://registry.npmjs.org/@types/istanbul-reports/-/istanbul-reports-3.0.4.tgz", - Network accessline 1622
"node_modules/@types/jest": { "version": "30.0.0", "resolved": "https://registry.npmjs.org/@types/jest/-/jest-30.0.0.tgz", - Network accessline 1623
"version": "30.0.0", "resolved": "https://registry.npmjs.org/@types/jest/-/jest-30.0.0.tgz", "integrity": "sha512-XTYugzhuwqWjws0CVz8QpM36+T+Dz5mTEBKhNs/esGLnCIlGdRy+Dq78NRjd7ls7r8BC8ZRMOrKlkO1hU0JOwA==", - Network accessline 1624
"resolved": "https://registry.npmjs.org/@types/jest/-/jest-30.0.0.tgz", - Network accessline 1633
"node_modules/@types/node": { "version": "25.3.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", - Network accessline 1634
"version": "25.3.0", "resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", "integrity": "sha512-4K3bqJpXpqfg2XKGK9bpDTc6xO/xoUP/RBWS7AtRMug6zZFaRekiLzjVtAoZMquxoAbzBvy5nxQ7veS5eYzf8A==", - Network accessline 1635
"resolved": "https://registry.npmjs.org/@types/node/-/node-25.3.0.tgz", - Network accessline 1643
"node_modules/@types/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", - Network accessline 1644
"version": "4.0.0", "resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-+OpjSaq85gvlZAYINyzKpLeiFkSC4EsC6IIiT6v6TLSU5k5U83fHGj9Lel8oKEXM0HqgrMVCjXPDPVICtxF7EQ==", - Network accessline 1645
"resolved": "https://registry.npmjs.org/@types/slice-ansi/-/slice-ansi-4.0.0.tgz", - Network accessline 1650
"node_modules/@types/stack-utils": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - Network accessline 1651
"version": "2.0.3", "resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", "integrity": "sha512-9aEbYZ3TbYMznPdcdr3SmIrLXwC/AKZXQeCf9Pgao5CKb8CyHuEX5jzWPTkvregvhRJHcpRO6BFoGW9ycaOkYw==", - Network accessline 1652
"resolved": "https://registry.npmjs.org/@types/stack-utils/-/stack-utils-2.0.3.tgz", - Network accessline 1657
"node_modules/@types/yargs": { "version": "17.0.35", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", - Network accessline 1658
"version": "17.0.35", "resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", "integrity": "sha512-qUHkeCyQFxMXg79wQfTtfndEC+N9ZZg76HJftDJp+qH2tV7Gj4OJi7l+PiWwJ+pWtW8GwSmqsDj/oymhrTWXjg==", - Network accessline 1659
"resolved": "https://registry.npmjs.org/@types/yargs/-/yargs-17.0.35.tgz", - Network accessline 1667
"node_modules/@types/yargs-parser": { "version": "21.0.3", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - Network accessline 1668
"version": "21.0.3", "resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", "integrity": "sha512-I4q9QU9MQv4oEOz4tAHJtNz1cwuLxn2F3xcc2iV5WdqLPpUnj30aUuxt1mAxYTG+oe8CZMV/+6rU4S4gRDzqtQ==", - Network accessline 1669
"resolved": "https://registry.npmjs.org/@types/yargs-parser/-/yargs-parser-21.0.3.tgz", - Network accessline 1674
"node_modules/@ungap/structured-clone": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", - Network accessline 1675
"version": "1.3.0", "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", "integrity": "sha512-WmoN8qaIAo7WTYWbAZuG8PYEhn5fkz7dZrqTBZ7dtt//lL2Gwms1IcnQ5yHqjDfX8Ft5j4YzDM23f87zBfDe9g==", - Network accessline 1676
"resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.3.0.tgz", - Network accessline 1681
"node_modules/@unrs/resolver-binding-android-arm-eabi": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", - Network accessline 1682
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", "integrity": "sha512-ppLRUgHVaGRWUx0R0Ut06Mjo9gBaBkg3v/8AxusGLhsIotbBLuRk51rAz - Network accessline 1683
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm-eabi/-/resolver-binding-android-arm-eabi-1.11.1.tgz", - Network accessline 1695
"node_modules/@unrs/resolver-binding-android-arm64": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", - Network accessline 1696
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", "integrity": "sha512-lCxkVtb4wp1v+EoN+HjIG9cIIzPkX5OtM03pQYkG+U5O/wL53LC4QbIeazgiKql - Network accessline 1697
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-android-arm64/-/resolver-binding-android-arm64-1.11.1.tgz", - Network accessline 1709
"node_modules/@unrs/resolver-binding-darwin-arm64": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", - Network accessline 1710
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", "integrity": "sha512-gPVA1UjRu1Y/IsB/dQEsp2V1pm44Of6+LWvbLc9SDk1c2KhhDRDBUkQCYVWe6f26u - Network accessline 1711
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-arm64/-/resolver-binding-darwin-arm64-1.11.1.tgz", - Network accessline 1723
"node_modules/@unrs/resolver-binding-darwin-x64": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", - Network accessline 1724
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", "integrity": "sha512-cFzP7rWKd3lZaCsDze07QX1SC24lO8mPty9vdP+YVa3MGdVgPmFc59317b2ioXtgCMKGi - Network accessline 1725
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-darwin-x64/-/resolver-binding-darwin-x64-1.11.1.tgz", - Network accessline 1737
"node_modules/@unrs/resolver-binding-freebsd-x64": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", - Network accessline 1738
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", "integrity": "sha512-fqtGgak3zX4DCB6PFpsH5+Kmt/8CIi4Bry4rb1ho6Av2QHTREM+47y282Uqiu3ZRF5I - Network accessline 1739
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-freebsd-x64/-/resolver-binding-freebsd-x64-1.11.1.tgz", - Network accessline 1751
"node_modules/@unrs/resolver-binding-linux-arm-gnueabihf": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", - Network accessline 1752
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", "integrity": "sha512-u92mvlcYtp9MRKmP+ZvMmtPN34+/3lMHlyMj7wXJDeXxuM0Vgzz - Network accessline 1753
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-gnueabihf/-/resolver-binding-linux-arm-gnueabihf-1.11.1.tgz", - Network accessline 1765
"node_modules/@unrs/resolver-binding-linux-arm-musleabihf": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", - Network accessline 1766
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", "integrity": "sha512-cINaoY2z7LVCrfHkIcmvj7osTOtm6VVT16b5oQdS4beibX2SY - Network accessline 1767
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm-musleabihf/-/resolver-binding-linux-arm-musleabihf-1.11.1.tgz", - Network accessline 1779
"node_modules/@unrs/resolver-binding-linux-arm64-gnu": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", - Network accessline 1780
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", "integrity": "sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF - Network accessline 1781
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-gnu/-/resolver-binding-linux-arm64-gnu-1.11.1.tgz", - Network accessline 1793
"node_modules/@unrs/resolver-binding-linux-arm64-musl": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", - Network accessline 1794
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", "integrity": "sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90 - Network accessline 1795
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-arm64-musl/-/resolver-binding-linux-arm64-musl-1.11.1.tgz", - Network accessline 1807
"node_modules/@unrs/resolver-binding-linux-ppc64-gnu": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", - Network accessline 1808
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", "integrity": "sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecp - Network accessline 1809
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-ppc64-gnu/-/resolver-binding-linux-ppc64-gnu-1.11.1.tgz", - Network accessline 1821
"node_modules/@unrs/resolver-binding-linux-riscv64-gnu": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", - Network accessline 1822
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", "integrity": "sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak - Network accessline 1823
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-gnu/-/resolver-binding-linux-riscv64-gnu-1.11.1.tgz", - Network accessline 1835
"node_modules/@unrs/resolver-binding-linux-riscv64-musl": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", - Network accessline 1836
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", "integrity": "sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jK - Network accessline 1837
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-riscv64-musl/-/resolver-binding-linux-riscv64-musl-1.11.1.tgz", - Network accessline 1849
"node_modules/@unrs/resolver-binding-linux-s390x-gnu": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", - Network accessline 1850
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", "integrity": "sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2l - Network accessline 1851
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-s390x-gnu/-/resolver-binding-linux-s390x-gnu-1.11.1.tgz", - Network accessline 1863
"node_modules/@unrs/resolver-binding-linux-x64-gnu": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", - Network accessline 1864
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", "integrity": "sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DP - Network accessline 1865
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-gnu/-/resolver-binding-linux-x64-gnu-1.11.1.tgz", - Network accessline 1877
"node_modules/@unrs/resolver-binding-linux-x64-musl": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", - Network accessline 1878
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", "integrity": "sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJT - Network accessline 1879
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-linux-x64-musl/-/resolver-binding-linux-x64-musl-1.11.1.tgz", - Network accessline 1891
"node_modules/@unrs/resolver-binding-wasm32-wasi": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", - Network accessline 1892
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", "integrity": "sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRI - Network accessline 1893
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-wasm32-wasi/-/resolver-binding-wasm32-wasi-1.11.1.tgz", - Network accessline 1908
"node_modules/@unrs/resolver-binding-win32-arm64-msvc": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", - Network accessline 1909
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", "integrity": "sha512-nRcz5Il4ln0kMhfL8S3hLkxI85BXs3o8EYoattsJNdsX4YUU89iOkVn7g - Network accessline 1910
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-arm64-msvc/-/resolver-binding-win32-arm64-msvc-1.11.1.tgz", - Network accessline 1922
"node_modules/@unrs/resolver-binding-win32-ia32-msvc": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", - Network accessline 1923
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", "integrity": "sha512-DCEI6t5i1NmAZp6pFonpD5m7i6aFrpofcp4LA2i8IIq60Jyo28hamKBxNrZ - Network accessline 1924
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-ia32-msvc/-/resolver-binding-win32-ia32-msvc-1.11.1.tgz", - Network accessline 1936
"node_modules/@unrs/resolver-binding-win32-x64-msvc": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", - Network accessline 1937
"version": "1.11.1", "resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", "integrity": "sha512-lrW200hZdbfRtztbygyaq/6jP6AKE8qQN2KvPcJ+x7wiD038YtnYtZ82IMNJ6 - Network accessline 1938
"resolved": "https://registry.npmjs.org/@unrs/resolver-binding-win32-x64-msvc/-/resolver-binding-win32-x64-msvc-1.11.1.tgz", - Network accessline 1950
"node_modules/@xmldom/xmldom": { "version": "0.8.11", "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", - Network accessline 1951
"version": "0.8.11", "resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", "integrity": "sha512-cQzWCtO6C8TQiYl1ruKNn2U6Ao4o4WBBcbL61yJl84x+j5sOWWFU9X7DpND8XZG3daDppSsigMdfAIl2upQBRw==", - Network accessline 1952
"resolved": "https://registry.npmjs.org/@xmldom/xmldom/-/xmldom-0.8.11.tgz", - Network accessline 1960
"node_modules/acorn": { "version": "8.16.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", - Network accessline 1961
"version": "8.16.0", "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", "integrity": "sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==", - Network accessline 1962
"resolved": "https://registry.npmjs.org/acorn/-/acorn-8.16.0.tgz", - Network accessline 1973
"node_modules/acorn-walk": { "version": "8.3.5", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", - Network accessline 1974
"version": "8.3.5", "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", "integrity": "sha512-HEHNfbars9v4pgpW6SO1KSPkfoS0xVOM/9UzkJltjlsHZmJasxg8aXkuZa7SMf8vKGIBhpUsPluQSqhJFCqebw==", - Network accessline 1975
"resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-8.3.5.tgz", - Network accessline 1986
"node_modules/ansi-escapes": { "version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - Network accessline 1987
"version": "4.3.2", "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==", - Network accessline 1988
"resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz", - Network accessline 1997
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 1998
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 1999
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 2002
"node_modules/ansi-regex": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - Network accessline 2003
"version": "5.0.1", "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==", - Network accessline 2004
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz", - Network accessline 2012
"node_modules/ansi-styles": { "version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - Network accessline 2013
"version": "4.3.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==", - Network accessline 2014
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz", - Network accessline 2023
}, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 2024
"funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" } - Network accessline 2025
"url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 2028
"node_modules/anymatch": { "version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - Network accessline 2029
"version": "3.1.3", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", - Network accessline 2030
"resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - Network accessline 2042
"node_modules/arg": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - Network accessline 2043
"version": "4.1.3", "resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", "integrity": "sha512-58S9QDqG0Xx27YwPSt9fJxivjYl432YCwfDMfZ+71RAqUrZef7LrKQZ3LHLOwCS4FLNBplP533Zx895SeOCHvA==", - Network accessline 2044
"resolved": "https://registry.npmjs.org/arg/-/arg-4.1.3.tgz", - Network accessline 2049
"node_modules/argparse": { "version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - Network accessline 2050
"version": "1.0.10", "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", - Network accessline 2051
"resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - Network accessline 2059
"node_modules/astral-regex": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - Network accessline 2060
"version": "2.0.0", "resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", "integrity": "sha512-Z7tMw1ytTXt5jqMcOP+OQteU1VuNK9Y02uuJtKQ1Sv69jXQKKg5cibLwGJow8yzZP+eAc18EmLGPal0bp36rvQ==", - Network accessline 2061
"resolved": "https://registry.npmjs.org/astral-regex/-/astral-regex-2.0.0.tgz", - Network accessline 2069
"node_modules/at-least-node": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - Network accessline 2070
"version": "1.0.0", "resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", "integrity": "sha512-+q/t7Ekv1EDY2l6Gda6LLiX14rU9TV20Wa3ofeQmwPFZbOMo9DXrLbOjFaaclkXKWidIaopwAObQDqwWtGUjqg==", - Network accessline 2071
"resolved": "https://registry.npmjs.org/at-least-node/-/at-least-node-1.0.0.tgz", - Network accessline 2079
"node_modules/babel-jest": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz", - Network accessline 2080
"version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz", "integrity": "sha512-0YiBEOxWqKkSQWL9nNGGEgndoeL0ZpWrbLMNL5u/Kaxrli3Eaxlt3ZtIDktEvXt4L/R9r3ODr2zKwGM/2BjxVw==", - Network accessline 2081
"resolved": "https://registry.npmjs.org/babel-jest/-/babel-jest-30.2.0.tgz", - Network accessline 2101
"node_modules/babel-plugin-istanbul": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", - Network accessline 2102
"version": "7.0.1", "resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", "integrity": "sha512-D8Z6Qm8jCvVXtIRkBnqNHX0zJ37rQcFJ9u8WOS6tkYOsRdHBzypCstaxWiu5ZIlqQtviRYbgnRLSoCEvjqcqbA==" - Network accessline 2103
"resolved": "https://registry.npmjs.org/babel-plugin-istanbul/-/babel-plugin-istanbul-7.0.1.tgz", - Network accessline 2121
"node_modules/babel-plugin-jest-hoist": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz", - Network accessline 2122
"version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz", "integrity": "sha512-ftzhzSGMUnOzcCXd6WHdBGMyuwy15Wnn0iyyWGKgBDLxf9/s5ABuraCSpBX2uG0jUg4rqJnxsLc5+oYBqox - Network accessline 2123
"resolved": "https://registry.npmjs.org/babel-plugin-jest-hoist/-/babel-plugin-jest-hoist-30.2.0.tgz", - Network accessline 2134
"node_modules/babel-preset-current-node-syntax": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", - Network accessline 2135
"version": "1.2.0", "resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", "integrity": "sha512-E/VlAEzRrsLEb2+dv8yp3bo4scof3l9nR4lrld+Iy5NyVqgVYUJnDAmunkhPMisRI32 - Network accessline 2136
"resolved": "https://registry.npmjs.org/babel-preset-current-node-syntax/-/babel-preset-current-node-syntax-1.2.0.tgz", - Network accessline 2161
"node_modules/babel-preset-jest": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz", - Network accessline 2162
"version": "30.2.0", "resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz", "integrity": "sha512-US4Z3NOieAQumwFnYdUWKvUKh8+YSnS/gB3t6YBiz0bskpu7Pine8pPCheNxlPEW4wnUkma2a94YuW2q3guvCQ==", - Network accessline 2163
"resolved": "https://registry.npmjs.org/babel-preset-jest/-/babel-preset-jest-30.2.0.tgz", - Network accessline 2178
"node_modules/balanced-match": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - Network accessline 2179
"version": "1.0.2", "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", - Network accessline 2180
"resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", - Network accessline 2185
"node_modules/base64-js": { "version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - Network accessline 2186
"version": "1.5.1", "resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", "integrity": "sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==", - Network accessline 2187
"resolved": "https://registry.npmjs.org/base64-js/-/base64-js-1.5.1.tgz", - Network accessline 2191
{ "type": "github", "url": "https://github.com/sponsors/feross" - Network accessline 2192
"type": "github", "url": "https://github.com/sponsors/feross" }, - Network accessline 2193
"url": "https://github.com/sponsors/feross" - Network accessline 2195
{ "type": "patreon", "url": "https://www.patreon.com/feross" - Network accessline 2196
"type": "patreon", "url": "https://www.patreon.com/feross" }, - Network accessline 2197
"url": "https://www.patreon.com/feross" - Network accessline 2199
{ "type": "consulting", "url": "https://feross.org/support" - Network accessline 2200
"type": "consulting", "url": "https://feross.org/support" } - Network accessline 2201
"url": "https://feross.org/support" - Network accessline 2206
"node_modules/baseline-browser-mapping": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", - Network accessline 2207
"version": "2.10.0", "resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", "integrity": "sha512-lIyg0szRfYbiy67j9KN8IyeD7q7hcmqnJ1ddWmNt19ItGpNN64mnllmxUNFIOdOm6by97jlL6wfpTTJrm - Network accessline 2208
"resolved": "https://registry.npmjs.org/baseline-browser-mapping/-/baseline-browser-mapping-2.10.0.tgz", - Network accessline 2219
"node_modules/big-integer": { "version": "1.6.52", "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - Network accessline 2220
"version": "1.6.52", "resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", "integrity": "sha512-QxD8cf2eVqJOOz63z6JIN9BzvVs/dlySa5HGSBH5xtR8dPteIRQnBxxKqkNTiT6jbDTF6jAfrd4oMcND9RGbQg==", - Network accessline 2221
"resolved": "https://registry.npmjs.org/big-integer/-/big-integer-1.6.52.tgz", - Network accessline 2229
"node_modules/bplist-parser": { "version": "0.3.2", "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", - Network accessline 2230
"version": "0.3.2", "resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", "integrity": "sha512-apC2+fspHGI3mMKj+dGevkGo/tCqVB8jMb6i+OX+E29p0Iposz07fABkRIfVUPNd5A5VbuOz1bZbnmkKLYF+wQ==", - Network accessline 2231
"resolved": "https://registry.npmjs.org/bplist-parser/-/bplist-parser-0.3.2.tgz", - Network accessline 2242
"node_modules/brace-expansion": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - Network accessline 2243
"version": "2.0.2", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", "integrity": "sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==", - Network accessline 2244
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.2.tgz", - Network accessline 2252
"node_modules/braces": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - Network accessline 2253
"version": "3.0.3", "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", - Network accessline 2254
"resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - Network accessline 2265
"node_modules/browserslist": { "version": "4.28.1", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - Network accessline 2266
"version": "4.28.1", "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", "integrity": "sha512-ZC5Bd0LgJXgwGqUknZY/vkUQ04r8NXnJZ3yYi4vDmSiZmC/pdSN0NbNRPxZpbtO4uAfDUAFffO8IZoM3Gj8IkA==", - Network accessline 2267
"resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.28.1.tgz", - Network accessline 2271
{ "type": "opencollective", "url": "https://opencollective.com/browserslist" - Network accessline 2272
"type": "opencollective", "url": "https://opencollective.com/browserslist" }, - Network accessline 2273
"url": "https://opencollective.com/browserslist" - Network accessline 2275
{ "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" - Network accessline 2276
"type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" }, - Network accessline 2277
"url": "https://tidelift.com/funding/github/npm/browserslist" - Network accessline 2279
{ "type": "github", "url": "https://github.com/sponsors/ai" - Network accessline 2280
"type": "github", "url": "https://github.com/sponsors/ai" } - Network accessline 2281
"url": "https://github.com/sponsors/ai" - Network accessline 2299
"node_modules/bs-logger": { "version": "0.2.6", "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - Network accessline 2300
"version": "0.2.6", "resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", "integrity": "sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==", - Network accessline 2301
"resolved": "https://registry.npmjs.org/bs-logger/-/bs-logger-0.2.6.tgz", - Network accessline 2312
"node_modules/bser": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - Network accessline 2313
"version": "2.1.1", "resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", "integrity": "sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==", - Network accessline 2314
"resolved": "https://registry.npmjs.org/bser/-/bser-2.1.1.tgz", - Network accessline 2322
"node_modules/buffer-crc32": { "version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - Network accessline 2323
"version": "0.2.13", "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha512-VO9Ht/+p3SN7SKWqcrgEzjGbRSJYTx+Q1pTQC0wrWqHx0vpJraQ6GtHx8tvcg1rlK1byhU5gccxgOgj7B0TDkQ==", - Network accessline 2324
"resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", - Network accessline 2332
"node_modules/buffer-from": { "version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - Network accessline 2333
"version": "1.1.2", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==", - Network accessline 2334
"resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz", - Network accessline 2339
"node_modules/callsites": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - Network accessline 2340
"version": "3.1.0", "resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", "integrity": "sha512-P8BjAsXvZS+VIDUI11hHCQEv74YT67YUi5JJFNWIqL235sBmjX4+qx9Muvls5ivyNENctx46xQLQ3aTuE7ssaQ==", - Network accessline 2341
"resolved": "https://registry.npmjs.org/callsites/-/callsites-3.1.0.tgz", - Network accessline 2349
"node_modules/camelcase": { "version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - Network accessline 2350
"version": "5.3.1", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==", - Network accessline 2351
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz", - Network accessline 2359
"node_modules/caniuse-lite": { "version": "1.0.30001770", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", - Network accessline 2360
"version": "1.0.30001770", "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", "integrity": "sha512-x/2CLQ1jHENRbHg5PSId2sXq1CIO1CISvwWAj027ltMVG2UNgW+w9oH2+HzgEIRFembL8bUlXtfbBHR1fCg2xw==", - Network accessline 2361
"resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001770.tgz", - Network accessline 2365
{ "type": "opencollective", "url": "https://opencollective.com/browserslist" - Network accessline 2366
"type": "opencollective", "url": "https://opencollective.com/browserslist" }, - Network accessline 2367
"url": "https://opencollective.com/browserslist" - Network accessline 2369
{ "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" - Network accessline 2370
"type": "tidelift", "url": "https://tidelift.com/funding/github/npm/caniuse-lite" }, - Network accessline 2371
"url": "https://tidelift.com/funding/github/npm/caniuse-lite" - Network accessline 2373
{ "type": "github", "url": "https://github.com/sponsors/ai" - Network accessline 2374
"type": "github", "url": "https://github.com/sponsors/ai" } - Network accessline 2375
"url": "https://github.com/sponsors/ai" - Network accessline 2380
"node_modules/capacitor-secure-storage-plugin": { "version": "0.10.0", "resolved": "https://registry.npmjs.org/capacitor-secure-storage-plugin/-/capacitor-secure-storage-plugin-0.10.0.tgz", - Network accessline 2381
"version": "0.10.0", "resolved": "https://registry.npmjs.org/capacitor-secure-storage-plugin/-/capacitor-secure-storage-plugin-0.10.0.tgz", "integrity": "sha512-dV4E+HTZAJWC3gef7sBXaAkkb6wvcZHyXjJIHXNb3yz9gRQ/5VMLqCxa0khqpwgWh5o - Network accessline 2382
"resolved": "https://registry.npmjs.org/capacitor-secure-storage-plugin/-/capacitor-secure-storage-plugin-0.10.0.tgz", - Network accessline 2389
"node_modules/chalk": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - Network accessline 2390
"version": "4.1.2", "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==", - Network accessline 2391
"resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz", - Network accessline 2401
}, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 2402
"funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } - Network accessline 2403
"url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 2406
"node_modules/char-regex": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - Network accessline 2407
"version": "1.0.2", "resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", "integrity": "sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==", - Network accessline 2408
"resolved": "https://registry.npmjs.org/char-regex/-/char-regex-1.0.2.tgz", - Network accessline 2416
"node_modules/chownr": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - Network accessline 2417
"version": "2.0.0", "resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", "integrity": "sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==", - Network accessline 2418
"resolved": "https://registry.npmjs.org/chownr/-/chownr-2.0.0.tgz", - Network accessline 2426
"node_modules/ci-info": { "version": "4.4.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", - Network accessline 2427
"version": "4.4.0", "resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", "integrity": "sha512-77PSwercCZU2Fc4sX94eF8k8Pxte6JAwL4/ICZLFjJLqegs7kCuAsqqj/70NQF6TvDpgFjkubQB2FW2ZZddvQg==", - Network accessline 2428
"resolved": "https://registry.npmjs.org/ci-info/-/ci-info-4.4.0.tgz", - Network accessline 2432
{ "type": "github", "url": "https://github.com/sponsors/sibiraj-s" - Network accessline 2433
"type": "github", "url": "https://github.com/sponsors/sibiraj-s" } - Network accessline 2434
"url": "https://github.com/sponsors/sibiraj-s" - Network accessline 2442
"node_modules/cjs-module-lexer": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.0.tgz", - Network accessline 2443
"version": "2.2.0", "resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.0.tgz", "integrity": "sha512-4bHTS2YuzUvtoLjdy+98ykbNB5jS0+07EvFNXerqZQJ89F7DI6ET7OQo/HJuW6K0aVsKA9hj9/RVb2kQVOrPDQ==", - Network accessline 2444
"resolved": "https://registry.npmjs.org/cjs-module-lexer/-/cjs-module-lexer-2.2.0.tgz", - Network accessline 2449
"node_modules/cliui": { "version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - Network accessline 2450
"version": "8.0.1", "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==", - Network accessline 2451
"resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz", - Network accessline 2464
"node_modules/co": { "version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - Network accessline 2465
"version": "4.6.0", "resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", "integrity": "sha512-QVb0dM5HvG+uaxitm8wONl7jltx8dqhfU33DcqtOZcLSVIKSDDLDi7+0LbAKiyI8hD9u42m2YxXSkMGWThaecQ==", - Network accessline 2466
"resolved": "https://registry.npmjs.org/co/-/co-4.6.0.tgz", - Network accessline 2475
"node_modules/collect-v8-coverage": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", - Network accessline 2476
"version": "1.0.3", "resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", "integrity": "sha512-1L5aqIkwPfiodaMgQunkF1zRhNqifHBmtbbbxcr6yVxxBnliw4TDOW6NxpO8DJLgJ16OT+Y4ztZqP6p/FtXnAw==", - Network accessline 2477
"resolved": "https://registry.npmjs.org/collect-v8-coverage/-/collect-v8-coverage-1.0.3.tgz", - Network accessline 2482
"node_modules/color-convert": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - Network accessline 2483
"version": "2.0.1", "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==", - Network accessline 2484
"resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz", - Network accessline 2495
"node_modules/color-name": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - Network accessline 2496
"version": "1.1.4", "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==", - Network accessline 2497
"resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz", - Network accessline 2502
"node_modules/commander": { "version": "9.5.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - Network accessline 2503
"version": "9.5.0", "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", - Network accessline 2504
"resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", - Network accessline 2512
"node_modules/concat-map": { "version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - Network accessline 2513
"version": "0.0.1", "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", - Network accessline 2514
"resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", - Network accessline 2519
"node_modules/convert-source-map": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - Network accessline 2520
"version": "2.0.0", "resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", "integrity": "sha512-Kvp459HrV2FEJ1CAsi1Ku+MY3kasH19TFykTz2xWmMeq6bk2NU3XXvfJ+Q61m0xktWwt+1HSYf3JZsTms3aRJg==", - Network accessline 2521
"resolved": "https://registry.npmjs.org/convert-source-map/-/convert-source-map-2.0.0.tgz", - Network accessline 2526
"node_modules/create-require": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - Network accessline 2527
"version": "1.1.1", "resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", "integrity": "sha512-dcKFX3jn0MpIaXjisoRvexIJVEKzaq7z2rZKxf+MSr9TkdmHmsU4m2lcLojrj/FHl8mk5VxMmYA+ftRkP/3oKQ==", - Network accessline 2528
"resolved": "https://registry.npmjs.org/create-require/-/create-require-1.1.1.tgz", - Network accessline 2533
"node_modules/cross-spawn": { "version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - Network accessline 2534
"version": "7.0.6", "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", "integrity": "sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==", - Network accessline 2535
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.6.tgz", - Network accessline 2548
"node_modules/debug": { "version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - Network accessline 2549
"version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - Network accessline 2550
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - Network accessline 2566
"node_modules/dedent": { "version": "1.7.1", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.1.tgz", - Network accessline 2567
"version": "1.7.1", "resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.1.tgz", "integrity": "sha512-9JmrhGZpOlEgOLdQgSm0zxFaYoQon408V1v49aqTWuXENVlnCuY9JBZcXZiCsZQWDjTm5Qf/nIvAy77mXDAjEg==", - Network accessline 2568
"resolved": "https://registry.npmjs.org/dedent/-/dedent-1.7.1.tgz", - Network accessline 2581
"node_modules/deepmerge": { "version": "4.3.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - Network accessline 2582
"version": "4.3.1", "resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", "integrity": "sha512-3sUqbMEc77XqpdNO7FRyRog+eW3ph+GYCbj+rK+uYyRMuwsVy0rMiVtPn+QJlKFvWP/1PYpapqYn0Me2knFn+A==", - Network accessline 2583
"resolved": "https://registry.npmjs.org/deepmerge/-/deepmerge-4.3.1.tgz", - Network accessline 2591
"node_modules/define-lazy-prop": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - Network accessline 2592
"version": "2.0.0", "resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", "integrity": "sha512-Ds09qNh8yw3khSjiJjiUInaGX9xlqZDY7JVryGxdxV7NPeuqQfplOpQ66yJFZut3jLa5zOwkXw1g9EI2uKh4Og==", - Network accessline 2593
"resolved": "https://registry.npmjs.org/define-lazy-prop/-/define-lazy-prop-2.0.0.tgz", - Network accessline 2601
"node_modules/detect-newline": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - Network accessline 2602
"version": "3.1.0", "resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", "integrity": "sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==", - Network accessline 2603
"resolved": "https://registry.npmjs.org/detect-newline/-/detect-newline-3.1.0.tgz", - Network accessline 2611
"node_modules/diff": { "version": "4.0.4", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz", - Network accessline 2612
"version": "4.0.4", "resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz", "integrity": "sha512-X07nttJQkwkfKfvTPG/KSnE2OMdcUCao6+eXF3wmnIQRn2aPAHH3VxDbDOdegkd6JbPsXqShpvEOHfAT+nCNwQ==", - Network accessline 2613
"resolved": "https://registry.npmjs.org/diff/-/diff-4.0.4.tgz", - Network accessline 2621
"node_modules/eastasianwidth": { "version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - Network accessline 2622
"version": "0.2.0", "resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==", - Network accessline 2623
"resolved": "https://registry.npmjs.org/eastasianwidth/-/eastasianwidth-0.2.0.tgz", - Network accessline 2628
"node_modules/electron-to-chromium": { "version": "1.5.302", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz", - Network accessline 2629
"version": "1.5.302", "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz", "integrity": "sha512-sM6HAN2LyK82IyPBpznDRqlTQAtuSaO+ShzFiWTvoMJLHyZ+Y39r8VMfHzwbU8MVBzQ4Wdn85+wlZl2TLGIlwg= - Network accessline 2630
"resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.302.tgz", - Network accessline 2635
"node_modules/elementtree": { "version": "0.1.7", "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", - Network accessline 2636
"version": "0.1.7", "resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", "integrity": "sha512-wkgGT6kugeQk/P6VZ/f4T+4HB41BVgNBq5CDIZVbQ02nvTVqAiVTbskxxu3eA/X96lMlfYOwnLQpN2v5E1zDEg==", - Network accessline 2637
"resolved": "https://registry.npmjs.org/elementtree/-/elementtree-0.1.7.tgz", - Network accessline 2648
"node_modules/emittery": { "version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - Network accessline 2649
"version": "0.13.1", "resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", "integrity": "sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==", - Network accessline 2650
"resolved": "https://registry.npmjs.org/emittery/-/emittery-0.13.1.tgz", - Network accessline 2656
}, "funding": { "url": "https://github.com/sindresorhus/emittery?sponsor=1" - Network accessline 2657
"funding": { "url": "https://github.com/sindresorhus/emittery?sponsor=1" } - Network accessline 2658
"url": "https://github.com/sindresorhus/emittery?sponsor=1" - Network accessline 2661
"node_modules/emoji-regex": { "version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - Network accessline 2662
"version": "8.0.0", "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==", - Network accessline 2663
"resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz", - Network accessline 2668
"node_modules/env-paths": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - Network accessline 2669
"version": "2.2.1", "resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", "integrity": "sha512-+h1lkLKhZMTYjog1VEpJNG7NZJWcuc2DDk/qsqSTRRCOXiLjeQ1d1/udrUGhqMxUgAlwKNZ0cf2uqan5GLuS2A==", - Network accessline 2670
"resolved": "https://registry.npmjs.org/env-paths/-/env-paths-2.2.1.tgz", - Network accessline 2678
"node_modules/error-ex": { "version": "1.3.4", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", - Network accessline 2679
"version": "1.3.4", "resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", "integrity": "sha512-sqQamAnR14VgCr1A618A3sGrygcpK+HEbenA/HiEAkkUwcZIIB/tgWqHFxWgOyDh4nB4JCRimh79dR5Ywc9MDQ==", - Network accessline 2680
"resolved": "https://registry.npmjs.org/error-ex/-/error-ex-1.3.4.tgz", - Network accessline 2688
"node_modules/escalade": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - Network accessline 2689
"version": "3.2.0", "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", - Network accessline 2690
"resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", - Network accessline 2698
"node_modules/escape-string-regexp": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - Network accessline 2699
"version": "2.0.0", "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", - Network accessline 2700
"resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", - Network accessline 2708
"node_modules/esprima": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - Network accessline 2709
"version": "4.0.1", "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - Network accessline 2710
"resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - Network accessline 2722
"node_modules/execa": { "version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - Network accessline 2723
"version": "5.1.1", "resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", "integrity": "sha512-8uSpZZocAZRBAPIEINJj3Lo9HyGitllczc27Eh5YYojjMFMn8yHMDMaUHE2Jqfq05D/wucwI4JGURyXt1vchyg==", - Network accessline 2724
"resolved": "https://registry.npmjs.org/execa/-/execa-5.1.1.tgz", - Network accessline 2741
}, "funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" - Network accessline 2742
"funding": { "url": "https://github.com/sindresorhus/execa?sponsor=1" } - Network accessline 2743
"url": "https://github.com/sindresorhus/execa?sponsor=1" - Network accessline 2746
"node_modules/exit-x": { "version": "0.2.2", "resolved": "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz", - Network accessline 2747
"version": "0.2.2", "resolved": "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz", "integrity": "sha512-+I6B/IkJc1o/2tiURyz/ivu/O0nKNEArIUB5O7zBrlDVJr22SCLH3xTeEry428LvFhRzIA1g8izguxJ/gbNcVQ==", - Network accessline 2748
"resolved": "https://registry.npmjs.org/exit-x/-/exit-x-0.2.2.tgz", - Network accessline 2756
"node_modules/expect": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz", - Network accessline 2757
"version": "30.2.0", "resolved": "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz", "integrity": "sha512-u/feCi0GPsI+988gU2FLcsHyAHTU0MX1Wg68NhAnN7z/+C5wqG+CY8J53N9ioe8RXgaoz0nBR/TYMf3AycUuPw==", - Network accessline 2758
"resolved": "https://registry.npmjs.org/expect/-/expect-30.2.0.tgz", - Network accessline 2774
"node_modules/fast-json-stable-stringify": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - Network accessline 2775
"version": "2.1.0", "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjC - Network accessline 2776
"resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", - Network accessline 2781
"node_modules/fb-watchman": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - Network accessline 2782
"version": "2.0.2", "resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", "integrity": "sha512-p5161BqbuCaSnB8jIbzQHOlpgsPmK5rJVDfDKO91Axs5NC1uu3HRQm6wt9cd9/+GtQQIO53JdGXXoyDpTAsgYA==", - Network accessline 2783
"resolved": "https://registry.npmjs.org/fb-watchman/-/fb-watchman-2.0.2.tgz", - Network accessline 2791
"node_modules/fd-slicer": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - Network accessline 2792
"version": "1.1.0", "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", "integrity": "sha512-cE1qsB/VwyQozZ+q1dGxR8LBYNZeofhEdUNGSMbQD3Gw2lAzX9Zb3uIU6Ebc/Fmyjo9AWWfnn0AUCHqtevs/8g==", - Network accessline 2793
"resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz", - Network accessline 2801
"node_modules/fill-range": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - Network accessline 2802
"version": "7.1.1", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - Network accessline 2803
"resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - Network accessline 2814
"node_modules/find-up": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - Network accessline 2815
"version": "4.1.0", "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==", - Network accessline 2816
"resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz", - Network accessline 2828
"node_modules/foreground-child": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - Network accessline 2829
"version": "3.3.1", "resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", "integrity": "sha512-gIXjKqtFuWEgzFRJA9WCQeSJLZDjgJUOMCMzxtvFq/37KojM1BFGufqsCy0r4qSQmYLsZYMeyRqzIWOMup03sw==", - Network accessline 2830
"resolved": "https://registry.npmjs.org/foreground-child/-/foreground-child-3.3.1.tgz", - Network accessline 2840
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2841
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2842
"url": "https://github.com/sponsors/isaacs" - Network accessline 2845
"node_modules/foreground-child/node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 2846
"version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - Network accessline 2847
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 2853
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2854
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2855
"url": "https://github.com/sponsors/isaacs" - Network accessline 2858
"node_modules/fs-extra": { "version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - Network accessline 2859
"version": "9.1.0", "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", - Network accessline 2860
"resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", - Network accessline 2874
"node_modules/fs-minipass": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - Network accessline 2875
"version": "2.1.0", "resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", "integrity": "sha512-V/JgOLFCS+R6Vcq0slCuaeWEdNC3ouDlJMNIsacH2VtALiu9mV4LPrHc5cDl8k5aw6J8jwgWWpiTo5RYhmIzvg==", - Network accessline 2876
"resolved": "https://registry.npmjs.org/fs-minipass/-/fs-minipass-2.1.0.tgz", - Network accessline 2887
"node_modules/fs-minipass/node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - Network accessline 2888
"version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - Network accessline 2889
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - Network accessline 2900
"node_modules/fs.realpath": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - Network accessline 2901
"version": "1.0.0", "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", "integrity": "sha512-OO0pH2lK6a0hZnAdau5ItzHPI6pUlvI7jMVnxUQRtw4owF2wk8lOSabtGDCTP4Ggrg2MbGnWO9X8K1t4+fGMDw==", - Network accessline 2902
"resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz", - Network accessline 2907
"node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - Network accessline 2908
"version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - Network accessline 2909
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - Network accessline 2922
"node_modules/gensync": { "version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - Network accessline 2923
"version": "1.0.0-beta.2", "resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", "integrity": "sha512-3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==", - Network accessline 2924
"resolved": "https://registry.npmjs.org/gensync/-/gensync-1.0.0-beta.2.tgz", - Network accessline 2932
"node_modules/get-caller-file": { "version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - Network accessline 2933
"version": "2.0.5", "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==", - Network accessline 2934
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz", - Network accessline 2942
"node_modules/get-package-type": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - Network accessline 2943
"version": "0.1.0", "resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", "integrity": "sha512-pjzuKtY64GYfWizNAJ0fr9VqttZkNiK2iS430LtIHzjBEr6bX8Am2zm4sW4Ro5wjWW5cAlRL1qAMTcXbjNAO2Q==", - Network accessline 2944
"resolved": "https://registry.npmjs.org/get-package-type/-/get-package-type-0.1.0.tgz", - Network accessline 2952
"node_modules/get-stream": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - Network accessline 2953
"version": "6.0.1", "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", "integrity": "sha512-ts6Wi+2j3jQjqi70w5AlN8DFnkSwC+MqmxEzdEALB2qXZYV3X/b1CTfgPLGJNMeAWxdPfU8FO1ms3NUfaHCPYg==", - Network accessline 2954
"resolved": "https://registry.npmjs.org/get-stream/-/get-stream-6.0.1.tgz", - Network accessline 2960
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 2961
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 2962
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 2965
"node_modules/glob": { "version": "9.3.5", "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - Network accessline 2966
"version": "9.3.5", "resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", "integrity": "sha512-e1LleDykUz2Iu+MTYdkSsuWX8lvAjAcs0Xef0lNIu0S2wOAzuTxCJtcd9S3cijlwYF18EsU3rzb8jPVobxDh9Q==", - Network accessline 2967
"resolved": "https://registry.npmjs.org/glob/-/glob-9.3.5.tgz", - Network accessline 2980
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2981
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2982
"url": "https://github.com/sponsors/isaacs" - Network accessline 2985
"node_modules/graceful-fs": { "version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - Network accessline 2986
"version": "4.2.11", "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", - Network accessline 2987
"resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", - Network accessline 2992
"node_modules/handlebars": { "version": "4.7.8", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - Network accessline 2993
"version": "4.7.8", "resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", "integrity": "sha512-vafaFqs8MZkRrSX7sFVUdo3ap/eNiLnb4IakshzvP56X5Nr1iGKAIqdX6tMlm6HcNRIkr6AxO5jFEoJzzpT8aQ==", - Network accessline 2994
"resolved": "https://registry.npmjs.org/handlebars/-/handlebars-4.7.8.tgz", - Network accessline 3014
"node_modules/has-flag": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - Network accessline 3015
"version": "4.0.0", "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", - Network accessline 3016
"resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", - Network accessline 3024
"node_modules/html-escaper": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - Network accessline 3025
"version": "2.0.2", "resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", "integrity": "sha512-H2iMtd0I4Mt5eYiapRdIDjp+XzelXQ0tFE4JS7YFwFevXXMmOp9myNrUvCg0D6ws8iqkRPBfKHgbwig1SmlLfg==", - Network accessline 3026
"resolved": "https://registry.npmjs.org/html-escaper/-/html-escaper-2.0.2.tgz", - Network accessline 3031
"node_modules/human-signals": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - Network accessline 3032
"version": "2.1.0", "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", "integrity": "sha512-B4FFZ6q/T2jhhksgkbEW3HBvWIfDW85snkQgawt07S7J5QXTk6BkNV+0yAeZrM5QpMAdYlocGoljn0sJ/WQkFw==", - Network accessline 3033
"resolved": "https://registry.npmjs.org/human-signals/-/human-signals-2.1.0.tgz", - Network accessline 3041
"node_modules/import-local": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", - Network accessline 3042
"version": "3.2.0", "resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", "integrity": "sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==", - Network accessline 3043
"resolved": "https://registry.npmjs.org/import-local/-/import-local-3.2.0.tgz", - Network accessline 3056
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3057
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3058
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3061
"node_modules/imurmurhash": { "version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - Network accessline 3062
"version": "0.1.4", "resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", "integrity": "sha512-JmXMZ6wuvDmLiHEml9ykzqO6lwFbof0GG4IkcGaENdCRDDmMVnny7s5HsIgHCbaq0w2MyPhDqkhTUgS2LU2PHA==", - Network accessline 3063
"resolved": "https://registry.npmjs.org/imurmurhash/-/imurmurhash-0.1.4.tgz", - Network accessline 3071
"node_modules/inflight": { "version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", - Network accessline 3072
"version": "1.0.6", "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", - Network accessline 3073
"resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz", "integrity": "sha512-k92I/b08q4wvFscXCLvqfsHCrjrF7yiXsQuIVvVE7N82W3+aqpzuUdBbfhWcy/FZR3/4IgflMgKLOsvPDrGCJA==", "deprecated": "This module is not supported, - Network accessline 3083
"node_modules/inherits": { "version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - Network accessline 3084
"version": "2.0.4", "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", - Network accessline 3085
"resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz", - Network accessline 3090
"node_modules/ini": { "version": "4.1.3", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - Network accessline 3091
"version": "4.1.3", "resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", "integrity": "sha512-X7rqawQBvfdjS10YU1y1YVreA3SsLrW9dX2CewP2EbBJM4ypVNLDkO5y04gejPwKIY9lR+7r9gn3rFPt/kmWFg==", - Network accessline 3092
"resolved": "https://registry.npmjs.org/ini/-/ini-4.1.3.tgz", - Network accessline 3100
"node_modules/is-arrayish": { "version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - Network accessline 3101
"version": "0.2.1", "resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", "integrity": "sha512-zz06S8t0ozoDXMG+ube26zeCTNXcKIPJZJi8hBrF4idCLms4CG9QtK7qBl1boi5ODzFpjswb5JPmHCbMpjaYzg==", - Network accessline 3102
"resolved": "https://registry.npmjs.org/is-arrayish/-/is-arrayish-0.2.1.tgz", - Network accessline 3107
"node_modules/is-docker": { "version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - Network accessline 3108
"version": "2.2.1", "resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", "integrity": "sha512-F+i2BKsFrH66iaUFc0woD8sLy8getkwTwtOBjvs56Cx4CgJDeKQeqfz8wAYiSb8JOprWhHH5p77PbmYCvvUuXQ==", - Network accessline 3109
"resolved": "https://registry.npmjs.org/is-docker/-/is-docker-2.2.1.tgz", - Network accessline 3118
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3119
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3120
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3123
"node_modules/is-fullwidth-code-point": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - Network accessline 3124
"version": "3.0.0", "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQ - Network accessline 3125
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", - Network accessline 3133
"node_modules/is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - Network accessline 3134
"version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", "integrity": "sha512-cTIB4yPYL/Grw0EaSzASzg6bBy9gqCofvWN8okThAYIxKJZC+udlRAmGbM0XLeniEJSs8uEgHPGuHSe1XsOLSQ==", - Network accessline 3135
"resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", - Network accessline 3143
"node_modules/is-number": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - Network accessline 3144
"version": "7.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - Network accessline 3145
"resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - Network accessline 3153
"node_modules/is-stream": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - Network accessline 3154
"version": "2.0.1", "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", "integrity": "sha512-hFoiJiTl63nn+kstHGBtewWSKnQLpyb155KHheA1l39uvtO9nWIop1p3udqPcUd/xbF1VLMO4n7OI6p7RbngDg==", - Network accessline 3155
"resolved": "https://registry.npmjs.org/is-stream/-/is-stream-2.0.1.tgz", - Network accessline 3161
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3162
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3163
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3166
"node_modules/is-wsl": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - Network accessline 3167
"version": "2.2.0", "resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", "integrity": "sha512-fKzAra0rGJUUBwGBgNkHZuToZcn+TtXHpeCgmkMJMMYx1sQDYaCSyjJBSCa2nH1DGm7s3n1oBnohoVTBaN7Lww==", - Network accessline 3168
"resolved": "https://registry.npmjs.org/is-wsl/-/is-wsl-2.2.0.tgz", - Network accessline 3179
"node_modules/isexe": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - Network accessline 3180
"version": "2.0.0", "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - Network accessline 3181
"resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - Network accessline 3186
"node_modules/istanbul-lib-coverage": { "version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - Network accessline 3187
"version": "3.2.2", "resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", "integrity": "sha512-O8dpsF+r0WV/8MNRKfnmrtCWhuKjxrq2w+jpzBL5UZKTi2LeVWnWOmWRxFlesJONmc+wLAGvKQZEOanko0LFTg==" - Network accessline 3188
"resolved": "https://registry.npmjs.org/istanbul-lib-coverage/-/istanbul-lib-coverage-3.2.2.tgz", - Network accessline 3196
"node_modules/istanbul-lib-instrument": { "version": "6.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", - Network accessline 3197
"version": "6.0.3", "resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", "integrity": "sha512-Vtgk7L/R2JHyyGW07spoFlB8/lpjiOLTjMdms6AFMraYt3BaJauod/NGrfnVG/y4Ix1JEuMRPDPEj2ua+zz1/ - Network accessline 3198
"resolved": "https://registry.npmjs.org/istanbul-lib-instrument/-/istanbul-lib-instrument-6.0.3.tgz", - Network accessline 3213
"node_modules/istanbul-lib-report": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - Network accessline 3214
"version": "3.0.1", "resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", "integrity": "sha512-GCfE1mtsHGOELCU8e/Z7YWzpmybrx/+dSTfLrvY8qRmaY6zXTKWn6WQIjaAFw069icm6GVMNkgu0NzI4iPZUNw==", - Network accessline 3215
"resolved": "https://registry.npmjs.org/istanbul-lib-report/-/istanbul-lib-report-3.0.1.tgz", - Network accessline 3228
"node_modules/istanbul-lib-source-maps": { "version": "5.0.6", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", - Network accessline 3229
"version": "5.0.6", "resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", "integrity": "sha512-yg2d+Em4KizZC5niWhQaIomgf5WlL4vOOjZ5xGCmF8SnPE/mDWWXgvRExdcpCgh9lLRRa1/fSYp2ymmbJ1p - Network accessline 3230
"resolved": "https://registry.npmjs.org/istanbul-lib-source-maps/-/istanbul-lib-source-maps-5.0.6.tgz", - Network accessline 3243
"node_modules/istanbul-reports": { "version": "3.2.0", "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", - Network accessline 3244
"version": "3.2.0", "resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", "integrity": "sha512-HGYWWS/ehqTV3xN10i23tkPkpH46MLCIMFNCaaKNavAXTF1RkqxawEPtnjnGZ6XKSInBKkiOA5BKS+aZiY3AvA==", - Network accessline 3245
"resolved": "https://registry.npmjs.org/istanbul-reports/-/istanbul-reports-3.2.0.tgz", - Network accessline 3257
"node_modules/jackspeak": { "version": "3.4.3", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - Network accessline 3258
"version": "3.4.3", "resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", "integrity": "sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==", - Network accessline 3259
"resolved": "https://registry.npmjs.org/jackspeak/-/jackspeak-3.4.3.tgz", - Network accessline 3265
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 3266
"funding": { "url": "https://github.com/sponsors/isaacs" }, - Network accessline 3267
"url": "https://github.com/sponsors/isaacs" - Network accessline 3273
"node_modules/jest": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", - Network accessline 3274
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", "integrity": "sha512-F26gjC0yWN8uAA5m5Ss8ZQf5nDHWGlN/xWZIh8S5SRbsEKBovwZhxGd6LJlbZYxBgCYOtreSUyb8hpXyGC5O4A==", - Network accessline 3275
"resolved": "https://registry.npmjs.org/jest/-/jest-30.2.0.tgz", - Network accessline 3300
"node_modules/jest-changed-files": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz", - Network accessline 3301
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz", "integrity": "sha512-L8lR1ChrRnSdfeOvTrwZMlnWV8G/LLjQ0nG9MBclwWZidA2N5FviRki0Bvh20WRMOX31/JYvzdqTJrk5oBdydQ==", - Network accessline 3302
"resolved": "https://registry.npmjs.org/jest-changed-files/-/jest-changed-files-30.2.0.tgz", - Network accessline 3315
"node_modules/jest-circus": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz", - Network accessline 3316
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz", "integrity": "sha512-Fh0096NC3ZkFx05EP2OXCxJAREVxj1BcW/i6EWqqymcgYKWjyyDpral3fMxVcHXg6oZM7iULer9wGRFvfpl+Tg==", - Network accessline 3317
"resolved": "https://registry.npmjs.org/jest-circus/-/jest-circus-30.2.0.tgz", - Network accessline 3347
"node_modules/jest-cli": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz", - Network accessline 3348
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz", "integrity": "sha512-Os9ukIvADX/A9sLt6Zse3+nmHtHaE6hqOsjQtNiugFTbKRHYIYtZXNGNK9NChseXy7djFPjndX1tL0sCTlfpAA==", - Network accessline 3349
"resolved": "https://registry.npmjs.org/jest-cli/-/jest-cli-30.2.0.tgz", - Network accessline 3380
"node_modules/jest-config": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz", - Network accessline 3381
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz", "integrity": "sha512-g4WkyzFQVWHtu6uqGmQR4CQxz/CH3yDSlhzXMWzNjDx843gYjReZnMRanjRCq5XZFuQrGDxgUaiYWE8BRfVckA==", - Network accessline 3382
"resolved": "https://registry.npmjs.org/jest-config/-/jest-config-30.2.0.tgz", - Network accessline 3432
"node_modules/jest-config/node_modules/glob": { "version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 3433
"version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", - Network accessline 3434
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 3449
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 3450
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 3451
"url": "https://github.com/sponsors/isaacs" - Network accessline 3454
"node_modules/jest-config/node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 3455
"version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - Network accessline 3456
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 3465
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 3466
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 3467
"url": "https://github.com/sponsors/isaacs" - Network accessline 3470
"node_modules/jest-config/node_modules/minipass": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 3471
"version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - Network accessline 3472
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 3480
"node_modules/jest-diff": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", - Network accessline 3481
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", "integrity": "sha512-dQHFo3Pt4/NLlG5z4PxZ/3yZTZ1C7s9hveiOj+GCN+uT109NC2QgsoVZsVOAvbJ3RgKkvyLGXZV9+piDpWbm6A==", - Network accessline 3482
"resolved": "https://registry.npmjs.org/jest-diff/-/jest-diff-30.2.0.tgz", - Network accessline 3496
"node_modules/jest-docblock": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz", - Network accessline 3497
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz", "integrity": "sha512-tR/FFgZKS1CXluOQzZvNH3+0z9jXr3ldGSD8bhyuxvlVUwbeLOGynkunvlTMxchC5urrKndYiwCFC0DLVjpOCA==", - Network accessline 3498
"resolved": "https://registry.npmjs.org/jest-docblock/-/jest-docblock-30.2.0.tgz", - Network accessline 3509
"node_modules/jest-each": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz", - Network accessline 3510
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz", "integrity": "sha512-lpWlJlM7bCUf1mfmuqTA8+j2lNURW9eNafOy99knBM01i5CQeY5UH1vZjgT9071nDJac1M4XsbyI44oNOdhlDQ==", - Network accessline 3511
"resolved": "https://registry.npmjs.org/jest-each/-/jest-each-30.2.0.tgz", - Network accessline 3526
"node_modules/jest-environment-node": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz", - Network accessline 3527
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz", "integrity": "sha512-ElU8v92QJ9UrYsKrxDIKCxu6PfNj4Hdcktcn0JX12zqNdqWHB0N+hwOnnBBXvjLd2vApZtuLUGs1QSY+MsXoNA= - Network accessline 3528
"resolved": "https://registry.npmjs.org/jest-environment-node/-/jest-environment-node-30.2.0.tgz", - Network accessline 3545
"node_modules/jest-haste-map": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz", - Network accessline 3546
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz", "integrity": "sha512-sQA/jCb9kNt+neM0anSj6eZhLZUIhQgwDt7cPGjumgLM4rXsfb9kpnlacmvZz3Q5tb80nS+oG/if+NBKrHC+Xw==", - Network accessline 3547
"resolved": "https://registry.npmjs.org/jest-haste-map/-/jest-haste-map-30.2.0.tgz", - Network accessline 3570
"node_modules/jest-leak-detector": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz", - Network accessline 3571
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz", "integrity": "sha512-M6jKAjyzjHG0SrQgwhgZGy9hFazcudwCNovY/9HPIicmNSBuockPSedAP9vlPK6ONFJ1zfyH/M2/YYJxOz5cdQ==", - Network accessline 3572
"resolved": "https://registry.npmjs.org/jest-leak-detector/-/jest-leak-detector-30.2.0.tgz", - Network accessline 3584
"node_modules/jest-matcher-utils": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", - Network accessline 3585
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", "integrity": "sha512-dQ94Nq4dbzmUWkQ0ANAWS9tBRfqCrn0bV9AMYdOi/MHW726xn7eQmMeRTpX2ViC00bpNaWXq+7o4lIQ3AX13Hg==", - Network accessline 3586
"resolved": "https://registry.npmjs.org/jest-matcher-utils/-/jest-matcher-utils-30.2.0.tgz", - Network accessline 3600
"node_modules/jest-message-util": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz", - Network accessline 3601
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz", "integrity": "sha512-y4DKFLZ2y6DxTWD4cDe07RglV88ZiNEdlRfGtqahfbIjfsw1nMCPx49Uev4IA/hWn3sDKyAnSPwoYSsAEdcimw==", - Network accessline 3602
"resolved": "https://registry.npmjs.org/jest-message-util/-/jest-message-util-30.2.0.tgz", - Network accessline 3621
"node_modules/jest-mock": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz", - Network accessline 3622
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz", "integrity": "sha512-JNNNl2rj4b5ICpmAcq+WbLH83XswjPbjH4T7yvGzfAGCPh1rw+xVNbtk+FnRslvt9lkCcdn9i1oAoKUuFsOxRw==", - Network accessline 3623
"resolved": "https://registry.npmjs.org/jest-mock/-/jest-mock-30.2.0.tgz", - Network accessline 3636
"node_modules/jest-pnp-resolver": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - Network accessline 3637
"version": "1.2.3", "resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", "integrity": "sha512-+3NpwQEnRoIBtx4fyhblQDPgJI0H1IEIkX7ShLUjPGA7TtUTvI1oiKi3SR4oBR0hQhQR80l4WAe5RrXBwWMA8w==", - Network accessline 3638
"resolved": "https://registry.npmjs.org/jest-pnp-resolver/-/jest-pnp-resolver-1.2.3.tgz", - Network accessline 3654
"node_modules/jest-regex-util": { "version": "30.0.1", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz", - Network accessline 3655
"version": "30.0.1", "resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz", "integrity": "sha512-jHEQgBXAgc+Gh4g0p3bCevgRCVRkB4VB70zhoAE48gxeSr1hfUOsM/C2WoJgVL7Eyg//hudYENbm3Ne+/dRVVA==", - Network accessline 3656
"resolved": "https://registry.npmjs.org/jest-regex-util/-/jest-regex-util-30.0.1.tgz", - Network accessline 3664
"node_modules/jest-resolve": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz", - Network accessline 3665
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz", "integrity": "sha512-TCrHSxPlx3tBY3hWNtRQKbtgLhsXa1WmbJEqBlTBrGafd5fiQFByy2GNCEoGR+Tns8d15GaL9cxEzKOO3GEb2A==", - Network accessline 3666
"resolved": "https://registry.npmjs.org/jest-resolve/-/jest-resolve-30.2.0.tgz", - Network accessline 3684
"node_modules/jest-resolve-dependencies": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz", - Network accessline 3685
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz", "integrity": "sha512-xTOIGug/0RmIe3mmCqCT95yO0vj6JURrn1TKWlNbhiAefJRWINNPgwVkrVgt/YaerPzY3iItufd80v3 - Network accessline 3686
"resolved": "https://registry.npmjs.org/jest-resolve-dependencies/-/jest-resolve-dependencies-30.2.0.tgz", - Network accessline 3698
"node_modules/jest-runner": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz", - Network accessline 3699
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz", "integrity": "sha512-PqvZ2B2XEyPEbclp+gV6KO/F1FIFSbIwewRgmROCMBo/aZ6J1w8Qypoj2pEOcg3G2HzLlaP6VUtvwCI8dM3oqQ==", - Network accessline 3700
"resolved": "https://registry.npmjs.org/jest-runner/-/jest-runner-30.2.0.tgz", - Network accessline 3732
"node_modules/jest-runtime": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz", - Network accessline 3733
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz", "integrity": "sha512-p1+GVX/PJqTucvsmERPMgCPvQJpFt4hFbM+VN3n8TMo47decMUcJbt+rgzwrEme0MQUA/R+1de2axftTHkKckg==", - Network accessline 3734
"resolved": "https://registry.npmjs.org/jest-runtime/-/jest-runtime-30.2.0.tgz", - Network accessline 3766
"node_modules/jest-runtime/node_modules/glob": { "version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 3767
"version": "10.5.0", "resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", "integrity": "sha512-DfXN8DfhJ7NH3Oe7cFmu3NCu1wKbkReJ8TorzSAFbSKrlNaQSKfIzqYqVY8zlbs2NLBbWpRiU52GX2PbaBVNkg==", - Network accessline 3768
"resolved": "https://registry.npmjs.org/glob/-/glob-10.5.0.tgz", - Network accessline 3783
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 3784
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 3785
"url": "https://github.com/sponsors/isaacs" - Network accessline 3788
"node_modules/jest-runtime/node_modules/minimatch": { "version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 3789
"version": "9.0.5", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", - Network accessline 3790
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", - Network accessline 3799
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 3800
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 3801
"url": "https://github.com/sponsors/isaacs" - Network accessline 3804
"node_modules/jest-runtime/node_modules/minipass": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 3805
"version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - Network accessline 3806
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 3814
"node_modules/jest-snapshot": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz", - Network accessline 3815
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz", "integrity": "sha512-5WEtTy2jXPFypadKNpbNkZ72puZCa6UjSr/7djeecHWOu7iYhSXSnHScT8wBz3Rn8Ena5d5RYRcsyKIeqG1IyA==", - Network accessline 3816
"resolved": "https://registry.npmjs.org/jest-snapshot/-/jest-snapshot-30.2.0.tgz", - Network accessline 3847
"node_modules/jest-util": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz", - Network accessline 3848
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz", "integrity": "sha512-QKNsM0o3Xe6ISQU869e+DhG+4CK/48aHYdJZGlFQVTjnbvgpcKyxpzk29fGiO7i/J8VENZ+d2iGnSsvmuHywlA==", - Network accessline 3849
"resolved": "https://registry.npmjs.org/jest-util/-/jest-util-30.2.0.tgz", - Network accessline 3865
"node_modules/jest-util/node_modules/picomatch": { "version": "4.0.3", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - Network accessline 3866
"version": "4.0.3", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", "integrity": "sha512-5gTmgEY/sqK6gFXLIsQNH19lWb4ebPDLA4SdLP7dsWkIXHWlG66oPuVvXSGFPppYZz8ZDZq0dYYrbHfBCVUb1Q==", - Network accessline 3867
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.3.tgz", - Network accessline 3873
}, "funding": { "url": "https://github.com/sponsors/jonschlinkert" - Network accessline 3874
"funding": { "url": "https://github.com/sponsors/jonschlinkert" } - Network accessline 3875
"url": "https://github.com/sponsors/jonschlinkert" - Network accessline 3878
"node_modules/jest-validate": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz", - Network accessline 3879
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz", "integrity": "sha512-FBGWi7dP2hpdi8nBoWxSsLvBFewKAg0+uSQwBaof4Y4DPgBabXgpSYC5/lR7VmnIlSpASmCi/ntRWPbv7089Pw==", - Network accessline 3880
"resolved": "https://registry.npmjs.org/jest-validate/-/jest-validate-30.2.0.tgz", - Network accessline 3896
"node_modules/jest-validate/node_modules/camelcase": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - Network accessline 3897
"version": "6.3.0", "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", "integrity": "sha512-Gmy6FhYlCY7uOElZUSbxo2UCDH8owEk996gkbrpsgGtrJLM3J7jGxl9Ic7Qwwj4ivOE5AWZWRMecDdF7hqGjFA==", - Network accessline 3898
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-6.3.0.tgz", - Network accessline 3904
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3905
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3906
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3909
"node_modules/jest-watcher": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz", - Network accessline 3910
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz", "integrity": "sha512-PYxa28dxJ9g777pGm/7PrbnMeA0Jr7osHP9bS7eJy9DuAjMgdGtxgf0uKMyoIsTWAkIbUW5hSDdJ3urmgXBqxg==", - Network accessline 3911
"resolved": "https://registry.npmjs.org/jest-watcher/-/jest-watcher-30.2.0.tgz", - Network accessline 3929
"node_modules/jest-worker": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz", - Network accessline 3930
"version": "30.2.0", "resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz", "integrity": "sha512-0Q4Uk8WF7BUwqXHuAjc23vmopWJw5WH7w2tqBoUOZpOjW/ZnR44GXXd1r82RvnmI2GZge3ivrYXk/BE2+VtW2g==", - Network accessline 3931
"resolved": "https://registry.npmjs.org/jest-worker/-/jest-worker-30.2.0.tgz", - Network accessline 3946
"node_modules/jest-worker/node_modules/supports-color": { "version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - Network accessline 3947
"version": "8.1.1", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", - Network accessline 3948
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", - Network accessline 3957
}, "funding": { "url": "https://github.com/chalk/supports-color?sponsor=1" - Network accessline 3958
"funding": { "url": "https://github.com/chalk/supports-color?sponsor=1" } - Network accessline 3959
"url": "https://github.com/chalk/supports-color?sponsor=1" - Network accessline 3962
"node_modules/js-tokens": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - Network accessline 3963
"version": "4.0.0", "resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", "integrity": "sha512-RdJUflcE3cUzKiMqQgsCu06FPu9UdIJO0beYbPhHN4k6apgJtifcoCtT9bcxOpYBtpD2kCM6Sbzg4CausW/PKQ==", - Network accessline 3964
"resolved": "https://registry.npmjs.org/js-tokens/-/js-tokens-4.0.0.tgz", - Network accessline 3969
"node_modules/js-yaml": { "version": "3.14.2", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - Network accessline 3970
"version": "3.14.2", "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", "integrity": "sha512-PMSmkqxr106Xa156c2M265Z+FTrPl+oxd/rgOQy2tijQeK5TxQ43psO1ZCwhVOSdnn+RzkzlRz/eY4BgJBYVpg==", - Network accessline 3971
"resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.2.tgz", - Network accessline 3983
"node_modules/jsesc": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - Network accessline 3984
"version": "3.1.0", "resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", "integrity": "sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==", - Network accessline 3985
"resolved": "https://registry.npmjs.org/jsesc/-/jsesc-3.1.0.tgz", - Network accessline 3996
"node_modules/json-parse-even-better-errors": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - Network accessline 3997
"version": "2.3.1", "resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", "integrity": "sha512-xyFwyhro/JEof6Ghe2iz2NcXoj2sloNsWr/XsERDK/oiPCfaNhl5ONfp+jQdAZRQQ0IJWNzH9 - Network accessline 3998
"resolved": "https://registry.npmjs.org/json-parse-even-better-errors/-/json-parse-even-better-errors-2.3.1.tgz", - Network accessline 4003
"node_modules/json5": { "version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - Network accessline 4004
"version": "2.2.3", "resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", "integrity": "sha512-XmOWe7eyHYH14cLdVPoyg+GOH3rYX++KpzrylJwSW98t3Nk+U8XOl8FWKOgwtzdb8lXGf6zYwDUzeHMWfxasyg==", - Network accessline 4005
"resolved": "https://registry.npmjs.org/json5/-/json5-2.2.3.tgz", - Network accessline 4016
"node_modules/jsonfile": { "version": "6.2.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", - Network accessline 4017
"version": "6.2.0", "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", "integrity": "sha512-FGuPw30AdOIUTRMC2OMRtQV+jkVj2cfPqSeWXv1NEAJ1qZ5zb1X6z1mFhbfOB/iy3ssJCD+3KuZ8r8C3uVFlAg==", - Network accessline 4018
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.2.0.tgz", - Network accessline 4029
"node_modules/kleur": { "version": "4.1.5", "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - Network accessline 4030
"version": "4.1.5", "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==", - Network accessline 4031
"resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz", - Network accessline 4039
"node_modules/leven": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - Network accessline 4040
"version": "3.1.0", "resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", "integrity": "sha512-qsda+H8jTaUaN/x5vzW2rzc+8Rw4TAQ/4KjB46IwK5VH+IlVeeeje/EoZRpiXvIqjFgK84QffqPztGI3VBLG1A==", - Network accessline 4041
"resolved": "https://registry.npmjs.org/leven/-/leven-3.1.0.tgz", - Network accessline 4049
"node_modules/lines-and-columns": { "version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - Network accessline 4050
"version": "1.2.4", "resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", "integrity": "sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==", - Network accessline 4051
"resolved": "https://registry.npmjs.org/lines-and-columns/-/lines-and-columns-1.2.4.tgz", - Network accessline 4056
"node_modules/locate-path": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - Network accessline 4057
"version": "5.0.0", "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==", - Network accessline 4058
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz", - Network accessline 4069
"node_modules/lodash.memoize": { "version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - Network accessline 4070
"version": "4.1.2", "resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", "integrity": "sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==", - Network accessline 4071
"resolved": "https://registry.npmjs.org/lodash.memoize/-/lodash.memoize-4.1.2.tgz", - Network accessline 4076
"node_modules/lru-cache": { "version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - Network accessline 4077
"version": "10.4.3", "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", "integrity": "sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==", - Network accessline 4078
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-10.4.3.tgz", - Network accessline 4083
"node_modules/make-dir": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - Network accessline 4084
"version": "4.0.0", "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", "integrity": "sha512-hXdUTZYIVOt1Ex//jAQi+wTZZpUpwBj/0QsOzqegb3rGMMeJiSEu5xLHnYfBrRV4RH2+OCSOO95Is/7x1WJ4bw==", - Network accessline 4085
"resolved": "https://registry.npmjs.org/make-dir/-/make-dir-4.0.0.tgz", - Network accessline 4094
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4095
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4096
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4099
"node_modules/make-error": { "version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - Network accessline 4100
"version": "1.3.6", "resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", "integrity": "sha512-s8UhlNe7vPKomQhC1qFelMokr/Sc3AgNbso3n74mVPA5LTZwkB9NlXf4XPamLxJE8h0gh73rM94xvwRT2CVInw==", - Network accessline 4101
"resolved": "https://registry.npmjs.org/make-error/-/make-error-1.3.6.tgz", - Network accessline 4106
"node_modules/makeerror": { "version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - Network accessline 4107
"version": "1.0.12", "resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", "integrity": "sha512-JmqCvUhmt43madlpFzG4BQzG2Z3m6tvQDNKdClZnO3VbIudJYmxsT0FNJMeiB2+JTSlTQTSbU8QdesVmwJcmLg==", - Network accessline 4108
"resolved": "https://registry.npmjs.org/makeerror/-/makeerror-1.0.12.tgz", - Network accessline 4116
"node_modules/merge-stream": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - Network accessline 4117
"version": "2.0.0", "resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", "integrity": "sha512-abv/qOcuPfk3URPfDzmZU1LKmuw8kT+0nIHvKrKgFrwifol/doWcdA4ZqsWQ8ENrFKkd67Mfpo/LovbIUsbt3w==", - Network accessline 4118
"resolved": "https://registry.npmjs.org/merge-stream/-/merge-stream-2.0.0.tgz", - Network accessline 4123
"node_modules/micromatch": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - Network accessline 4124
"version": "4.0.8", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", - Network accessline 4125
"resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", - Network accessline 4137
"node_modules/mimic-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - Network accessline 4138
"version": "2.1.0", "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - Network accessline 4139
"resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - Network accessline 4147
"node_modules/minimatch": { "version": "8.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - Network accessline 4148
"version": "8.0.4", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", "integrity": "sha512-W0Wvr9HyFXZRGIDgCicunpQ299OKXs9RgZfaukz4qAW/pJhcpUfupc9c+OObPOFueNy8VSrZgEmDtk6Kh4WzDA==", - Network accessline 4149
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-8.0.4.tgz", - Network accessline 4158
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 4159
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 4160
"url": "https://github.com/sponsors/isaacs" - Network accessline 4163
"node_modules/minimist": { "version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - Network accessline 4164
"version": "1.2.8", "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", - Network accessline 4165
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz", - Network accessline 4168
"license": "MIT", "funding": { "url": "https://github.com/sponsors/ljharb" - Network accessline 4169
"funding": { "url": "https://github.com/sponsors/ljharb" } - Network accessline 4170
"url": "https://github.com/sponsors/ljharb" - Network accessline 4173
"node_modules/minipass": { "version": "4.2.8", "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - Network accessline 4174
"version": "4.2.8", "resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", "integrity": "sha512-fNzuVyifolSLFL4NzpF+wEF4qrgqaaKX0haXPQEdQ7NKAN+WecoKMHV09YcuL/DHxrUsYQOK3MiuDf7Ip2OXfQ==", - Network accessline 4175
"resolved": "https://registry.npmjs.org/minipass/-/minipass-4.2.8.tgz", - Network accessline 4183
"node_modules/minizlib": { "version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - Network accessline 4184
"version": "2.1.2", "resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", "integrity": "sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==", - Network accessline 4185
"resolved": "https://registry.npmjs.org/minizlib/-/minizlib-2.1.2.tgz", - Network accessline 4197
"node_modules/minizlib/node_modules/minipass": { "version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - Network accessline 4198
"version": "3.3.6", "resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", "integrity": "sha512-DxiNidxSEK+tHG6zOIklvNOwm3hvCrbUrdtzY74U6HKTJxvIDfOUL5W5P2Ghd3DTkhhKPYGqeNUIh5qcM4YBfw==", - Network accessline 4199
"resolved": "https://registry.npmjs.org/minipass/-/minipass-3.3.6.tgz", - Network accessline 4210
"node_modules/mkdirp": { "version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - Network accessline 4211
"version": "1.0.4", "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", - Network accessline 4212
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", - Network accessline 4223
"node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - Network accessline 4224
"version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - Network accessline 4225
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - Network accessline 4230
"node_modules/napi-postinstall": { "version": "0.3.4", "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", - Network accessline 4231
"version": "0.3.4", "resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", "integrity": "sha512-PHI5f1O0EP5xJ9gQmFGMS6IZcrVvTjpXjz7Na41gTE7eE2hK11lg04CECCYEEjdc17EV4DO+fkGEtt7TpTaTiQ==", - Network accessline 4232
"resolved": "https://registry.npmjs.org/napi-postinstall/-/napi-postinstall-0.3.4.tgz", - Network accessline 4241
}, "funding": { "url": "https://opencollective.com/napi-postinstall" - Network accessline 4242
"funding": { "url": "https://opencollective.com/napi-postinstall" } - Network accessline 4243
"url": "https://opencollective.com/napi-postinstall" - Network accessline 4246
"node_modules/native-run": { "version": "2.0.3", "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.3.tgz", - Network accessline 4247
"version": "2.0.3", "resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.3.tgz", "integrity": "sha512-U1PllBuzW5d1gfan+88L+Hky2eZx+9gv3Pf6rNBxKbORxi7boHzqiA6QFGSnqMem4j0A9tZ08NMIs5+0m/VS1Q==", - Network accessline 4248
"resolved": "https://registry.npmjs.org/native-run/-/native-run-2.0.3.tgz", - Network accessline 4272
"node_modules/natural-compare": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - Network accessline 4273
"version": "1.4.0", "resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", "integrity": "sha512-OWND8ei3VtNC9h7V60qff3SVobHr996CTwgxubgyQYEpg290h9J0buyECNNJexkFm5sOajh5G116RYA1c8ZMSw==", - Network accessline 4274
"resolved": "https://registry.npmjs.org/natural-compare/-/natural-compare-1.4.0.tgz", - Network accessline 4279
"node_modules/neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - Network accessline 4280
"version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - Network accessline 4281
"resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - Network accessline 4286
"node_modules/node-int64": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - Network accessline 4287
"version": "0.4.0", "resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", "integrity": "sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==", - Network accessline 4288
"resolved": "https://registry.npmjs.org/node-int64/-/node-int64-0.4.0.tgz", - Network accessline 4293
"node_modules/node-releases": { "version": "2.0.27", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - Network accessline 4294
"version": "2.0.27", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", "integrity": "sha512-nmh3lCkYZ3grZvqcCH+fjmQ7X+H0OeZgP40OierEaAptX4XofMh5kwNbWh7lBduUzCcV/8kZ+NDLCwm2iorIlA==", - Network accessline 4295
"resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.27.tgz", - Network accessline 4300
"node_modules/normalize-path": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - Network accessline 4301
"version": "3.0.0", "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - Network accessline 4302
"resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - Network accessline 4310
"node_modules/npm-run-path": { "version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - Network accessline 4311
"version": "4.0.1", "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", "integrity": "sha512-S48WzZW777zhNIrn7gxOlISNAqi9ZC/uQFnRdbeIHhZhCA6UqpkOT8T1G7BvfdgP4Er8gF4sUbaS0i7QvIfCWw==", - Network accessline 4312
"resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-4.0.1.tgz", - Network accessline 4323
"node_modules/once": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - Network accessline 4324
"version": "1.4.0", "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", "integrity": "sha512-lNaJgI+2Q5URQBkccEKHTQOPaXdUxnZZElQTZY0MFUAuaEqe1E+Nyvgdz/aIyNi6Z9MzO5dv1H8n58/GELp3+w==", - Network accessline 4325
"resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz", - Network accessline 4333
"node_modules/onetime": { "version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - Network accessline 4334
"version": "5.1.2", "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - Network accessline 4335
"resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - Network accessline 4344
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4345
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4346
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4349
"node_modules/open": { "version": "8.4.2", "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - Network accessline 4350
"version": "8.4.2", "resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", "integrity": "sha512-7x81NCL719oNbsq/3mh+hVrAWmFuEYUqrq/Iw3kUzH8ReypT9QQ0BLoJS7/G9k6N81XjW4qHWtjWwe/9eLy1EQ==", - Network accessline 4351
"resolved": "https://registry.npmjs.org/open/-/open-8.4.2.tgz", - Network accessline 4362
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4363
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4364
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4367
"node_modules/p-limit": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - Network accessline 4368
"version": "3.1.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", "integrity": "sha512-TYOanM3wGwNGsZN2cVTYPArw454xnXj5qmWF1bEoAc4+cU/ol7GVh7odevjp1FNHduHc3KZMcFduxU5Xc6uJRQ==", - Network accessline 4369
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-3.1.0.tgz", - Network accessline 4378
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4379
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4380
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4383
"node_modules/p-locate": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - Network accessline 4384
"version": "4.1.0", "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==", - Network accessline 4385
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz", - Network accessline 4396
"node_modules/p-locate/node_modules/p-limit": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - Network accessline 4397
"version": "2.3.0", "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==", - Network accessline 4398
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz", - Network accessline 4407
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4408
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4409
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4412
"node_modules/p-try": { "version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - Network accessline 4413
"version": "2.2.0", "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==", - Network accessline 4414
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz", - Network accessline 4422
"node_modules/package-json-from-dist": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - Network accessline 4423
"version": "1.0.1", "resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", "integrity": "sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw= - Network accessline 4424
"resolved": "https://registry.npmjs.org/package-json-from-dist/-/package-json-from-dist-1.0.1.tgz", - Network accessline 4429
"node_modules/parse-json": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - Network accessline 4430
"version": "5.2.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", "integrity": "sha512-ayCKvm/phCGxOkYRSCM82iDwct8/EonSEgCSxWxD7ve6jHggsFl4fZVQBPRNgQoKiuV/odhFrGzQXZwbifC8Rg==", - Network accessline 4431
"resolved": "https://registry.npmjs.org/parse-json/-/parse-json-5.2.0.tgz", - Network accessline 4443
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4444
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4445
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4448
"node_modules/path-exists": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - Network accessline 4449
"version": "4.0.0", "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", "integrity": "sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==", - Network accessline 4450
"resolved": "https://registry.npmjs.org/path-exists/-/path-exists-4.0.0.tgz", - Network accessline 4458
"node_modules/path-is-absolute": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - Network accessline 4459
"version": "1.0.1", "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", "integrity": "sha512-AVbw3UJ2e9bq64vSaS9Am0fje1Pa8pbGqTTsmXfaIiMpnr5DlDhfJOuLj9Sf95ZPVDAUerDfEk88MPmPe7UCQg==", - Network accessline 4460
"resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", - Network accessline 4468
"node_modules/path-key": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - Network accessline 4469
"version": "3.1.1", "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - Network accessline 4470
"resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - Network accessline 4478
"node_modules/path-scurry": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - Network accessline 4479
"version": "1.11.1", "resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", "integrity": "sha512-Xa4Nw17FS9ApQFJ9umLiJS4orGjm7ZzwUrwamcGQuHSzDyth9boKDaycYdDcZDuqYATXw4HFXgaqWTctW/v1HA==", - Network accessline 4480
"resolved": "https://registry.npmjs.org/path-scurry/-/path-scurry-1.11.1.tgz", - Network accessline 4490
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 4491
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 4492
"url": "https://github.com/sponsors/isaacs" - Network accessline 4495
"node_modules/path-scurry/node_modules/minipass": { "version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 4496
"version": "7.1.3", "resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", "integrity": "sha512-tEBHqDnIoM/1rXME1zgka9g6Q2lcoCkxHLuc7ODJ5BxbP5d4c2Z5cGgtXAku59200Cx7diuHTOYfSBD8n6mm8A==", - Network accessline 4497
"resolved": "https://registry.npmjs.org/minipass/-/minipass-7.1.3.tgz", - Network accessline 4505
"node_modules/pend": { "version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - Network accessline 4506
"version": "1.2.0", "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", "integrity": "sha512-F3asv42UuXchdzt+xXqfW1OGlVBe+mxa2mqI0pg5yAHZPvFmY3Y6drSf/GQ1A86WgWEN9Kzh/WrgKa6iGcHXLg==", - Network accessline 4507
"resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz", - Network accessline 4512
"node_modules/picocolors": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - Network accessline 4513
"version": "1.1.1", "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", - Network accessline 4514
"resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", - Network accessline 4519
"node_modules/picomatch": { "version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - Network accessline 4520
"version": "2.3.1", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - Network accessline 4521
"resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - Network accessline 4527
}, "funding": { "url": "https://github.com/sponsors/jonschlinkert" - Network accessline 4528
"funding": { "url": "https://github.com/sponsors/jonschlinkert" } - Network accessline 4529
"url": "https://github.com/sponsors/jonschlinkert" - Network accessline 4532
"node_modules/pirates": { "version": "4.0.7", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", - Network accessline 4533
"version": "4.0.7", "resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", "integrity": "sha512-TfySrs/5nm8fQJDcBDuUng3VOUKsd7S+zqvbOTiGXHfxX4wK31ard+hoNuvkicM/2YFzlpDgABOevKSsB4G/FA==", - Network accessline 4534
"resolved": "https://registry.npmjs.org/pirates/-/pirates-4.0.7.tgz", - Network accessline 4542
"node_modules/pkg-dir": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - Network accessline 4543
"version": "4.2.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", "integrity": "sha512-HRDzbaKjC+AOWVXxAU/x54COGeIv9eb+6CkDSQoNTt4XyWoIJvuPsXizxu/Fr23EiekbtZwmh1IcIG/l/a10GQ==", - Network accessline 4544
"resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-4.2.0.tgz", - Network accessline 4555
"node_modules/plist": { "version": "3.1.0", "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", - Network accessline 4556
"version": "3.1.0", "resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", "integrity": "sha512-uysumyrvkUX0rX/dEVqt8gC3sTBzd4zoWfLeS29nb53imdaXVvLINYXTI2GNqzaMuvacNx4uJQ8+b3zXR0pkgQ==", - Network accessline 4557
"resolved": "https://registry.npmjs.org/plist/-/plist-3.1.0.tgz", - Network accessline 4570
"node_modules/pretty-format": { "version": "30.2.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", - Network accessline 4571
"version": "30.2.0", "resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", "integrity": "sha512-9uBdv/B4EefsuAL+pWqueZyZS2Ba+LxfFeQ9DN14HU4bN8bhaxKdkpjpB6fs9+pSjIBu+FXQHImEg8j/Lw0+vA==", - Network accessline 4572
"resolved": "https://registry.npmjs.org/pretty-format/-/pretty-format-30.2.0.tgz", - Network accessline 4585
"node_modules/pretty-format/node_modules/ansi-styles": { "version": "5.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - Network accessline 4586
"version": "5.2.0", "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", "integrity": "sha512-Cxwpt2SfTzTtXcfOlzGEee8O+c+MmUgGrNiBcXnuWxuFJHe6a5Hz7qwhwe5OgaSYI0IJvkLqWX1ASG+cJOkEiA==", - Network accessline 4587
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-5.2.0.tgz", - Network accessline 4593
}, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 4594
"funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" } - Network accessline 4595
"url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 4598
"node_modules/prompts": { "version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - Network accessline 4599
"version": "2.4.2", "resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", "integrity": "sha512-NxNv/kLguCA7p3jE8oL2aEBsrJWgAakBpgmgK6lpPWV+WuOmY6r2/zbAVnP+T8bQlA0nzHXSJSJW0Hq7ylaD2Q==", - Network accessline 4600
"resolved": "https://registry.npmjs.org/prompts/-/prompts-2.4.2.tgz", - Network accessline 4612
"node_modules/prompts/node_modules/kleur": { "version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - Network accessline 4613
"version": "3.0.3", "resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", "integrity": "sha512-eTIzlVOSUR+JxdDFepEYcBMtZ9Qqdef+rnzWdRZuMbOywu5tO2w2N7rqjoANZ5k9vywhL6Br1VRjUIgTQx4E8w==", - Network accessline 4614
"resolved": "https://registry.npmjs.org/kleur/-/kleur-3.0.3.tgz", - Network accessline 4622
"node_modules/pure-rand": { "version": "7.0.1", "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz", - Network accessline 4623
"version": "7.0.1", "resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz", "integrity": "sha512-oTUZM/NAZS8p7ANR3SHh30kXB+zK2r2BPcEn/awJIbOvq82WoMN4p62AWWp3Hhw50G0xMsw1mhIBLqHw64EcNQ==", - Network accessline 4624
"resolved": "https://registry.npmjs.org/pure-rand/-/pure-rand-7.0.1.tgz", - Network accessline 4628
{ "type": "individual", "url": "https://github.com/sponsors/dubzzz" - Network accessline 4629
"type": "individual", "url": "https://github.com/sponsors/dubzzz" }, - Network accessline 4630
"url": "https://github.com/sponsors/dubzzz" - Network accessline 4632
{ "type": "opencollective", "url": "https://opencollective.com/fast-check" - Network accessline 4633
"type": "opencollective", "url": "https://opencollective.com/fast-check" } - Network accessline 4634
"url": "https://opencollective.com/fast-check" - Network accessline 4639
"node_modules/react-is": { "version": "18.3.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - Network accessline 4640
"version": "18.3.1", "resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", "integrity": "sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==", - Network accessline 4641
"resolved": "https://registry.npmjs.org/react-is/-/react-is-18.3.1.tgz", - Network accessline 4646
"node_modules/readable-stream": { "version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - Network accessline 4647
"version": "3.6.2", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", - Network accessline 4648
"resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-3.6.2.tgz", - Network accessline 4661
"node_modules/require-directory": { "version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - Network accessline 4662
"version": "2.1.1", "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", "integrity": "sha512-fGxEI7+wsG9xrvdjsrlmL22OMTTiHRwAMroiEeMgq8gzoLC/PQr7RsRDSTLUg/bZAZtF+TVIkHc6/4RIKrui+Q==", - Network accessline 4663
"resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz", - Network accessline 4671
"node_modules/resolve-cwd": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - Network accessline 4672
"version": "3.0.0", "resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", "integrity": "sha512-OrZaX2Mb+rJCpH/6CpSqt9xFVpN++x01XnN2ie9g6P5/3xelLAkXWVADpdz1IHD/KFfEXyE6V0U01OQ3UO2rEg==", - Network accessline 4673
"resolved": "https://registry.npmjs.org/resolve-cwd/-/resolve-cwd-3.0.0.tgz", - Network accessline 4684
"node_modules/resolve-from": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - Network accessline 4685
"version": "5.0.0", "resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", "integrity": "sha512-qYg9KP24dD5qka9J47d0aVky0N+b4fTU89LN9iDnjB5waksiC49rvMB0PrUJQGoTmH50XPiqOvAjDfaijGxYZw==", - Network accessline 4686
"resolved": "https://registry.npmjs.org/resolve-from/-/resolve-from-5.0.0.tgz", - Network accessline 4694
"node_modules/rimraf": { "version": "4.4.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - Network accessline 4695
"version": "4.4.1", "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", "integrity": "sha512-Gk8NlF062+T9CqNGn6h4tls3k6T1+/nXdOcSZVikNVtlRdYpA7wRJJMoXmuvOnLW844rPjdQ7JgXCYM6PPC/og==", - Network accessline 4696
"resolved": "https://registry.npmjs.org/rimraf/-/rimraf-4.4.1.tgz", - Network accessline 4708
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 4709
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 4710
"url": "https://github.com/sponsors/isaacs" - Network accessline 4713
"node_modules/safe-buffer": { "version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - Network accessline 4714
"version": "5.2.1", "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", - Network accessline 4715
"resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.2.1.tgz", - Network accessline 4719
{ "type": "github", "url": "https://github.com/sponsors/feross" - Network accessline 4720
"type": "github", "url": "https://github.com/sponsors/feross" }, - Network accessline 4721
"url": "https://github.com/sponsors/feross" - Network accessline 4723
{ "type": "patreon", "url": "https://www.patreon.com/feross" - Network accessline 4724
"type": "patreon", "url": "https://www.patreon.com/feross" }, - Network accessline 4725
"url": "https://www.patreon.com/feross" - Network accessline 4727
{ "type": "consulting", "url": "https://feross.org/support" - Network accessline 4728
"type": "consulting", "url": "https://feross.org/support" } - Network accessline 4729
"url": "https://feross.org/support" - Network accessline 4734
"node_modules/sax": { "version": "1.1.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", - Network accessline 4735
"version": "1.1.4", "resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", "integrity": "sha512-5f3k2PbGGp+YtKJjOItpg3P99IMD84E4HOvcfleTb5joCHNXYLsR9yWFPOYGgaeMPDubQILTCMdsFb2OMeOjtg==", - Network accessline 4736
"resolved": "https://registry.npmjs.org/sax/-/sax-1.1.4.tgz", - Network accessline 4741
"node_modules/semver": { "version": "7.7.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - Network accessline 4742
"version": "7.7.4", "resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", "integrity": "sha512-vFKC2IEtQnVhpT78h1Yp8wzwrf8CM+MzKMHGJZfBtzhZNycRFnXsHk6E5TxIkkMsgNS7mdX3AGB7x2QM2di4lA==", - Network accessline 4743
"resolved": "https://registry.npmjs.org/semver/-/semver-7.7.4.tgz", - Network accessline 4754
"node_modules/shebang-command": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - Network accessline 4755
"version": "2.0.0", "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", - Network accessline 4756
"resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - Network accessline 4767
"node_modules/shebang-regex": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - Network accessline 4768
"version": "3.0.0", "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", - Network accessline 4769
"resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - Network accessline 4777
"node_modules/signal-exit": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - Network accessline 4778
"version": "3.0.7", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - Network accessline 4779
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - Network accessline 4784
"node_modules/sisteransi": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - Network accessline 4785
"version": "1.0.5", "resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", "integrity": "sha512-bLGGlR1QxBcynn2d5YmDX4MGjlZvy2MRBDRNHLJ8VI6l6+9FUiyTFNJ0IveOSP0bcXgVDPRcfGqA0pjaqUpfVg==", - Network accessline 4786
"resolved": "https://registry.npmjs.org/sisteransi/-/sisteransi-1.0.5.tgz", - Network accessline 4791
"node_modules/slash": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - Network accessline 4792
"version": "3.0.0", "resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", "integrity": "sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==", - Network accessline 4793
"resolved": "https://registry.npmjs.org/slash/-/slash-3.0.0.tgz", - Network accessline 4801
"node_modules/slice-ansi": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - Network accessline 4802
"version": "4.0.0", "resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", "integrity": "sha512-qMCMfhY040cVHT43K9BFygqYbUPFZKHOg7K73mtTWJRb8pyP3fzf4Ixd5SzdEJQ6MRUg/WBnOLxghZtKKurENQ==", - Network accessline 4803
"resolved": "https://registry.npmjs.org/slice-ansi/-/slice-ansi-4.0.0.tgz", - Network accessline 4814
}, "funding": { "url": "https://github.com/chalk/slice-ansi?sponsor=1" - Network accessline 4815
"funding": { "url": "https://github.com/chalk/slice-ansi?sponsor=1" } - Network accessline 4816
"url": "https://github.com/chalk/slice-ansi?sponsor=1" - Network accessline 4819
"node_modules/source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - Network accessline 4820
"version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - Network accessline 4821
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - Network accessline 4829
"node_modules/source-map-support": { "version": "0.5.13", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - Network accessline 4830
"version": "0.5.13", "resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", "integrity": "sha512-SHSKFHadjVA5oR4PPqhtAVdcBWwRYVd6g6cAXnIbRiIwc2EhPrTuKUBdSLvlEKyIP3GCf89fltvcZiP9MMFA1w==", - Network accessline 4831
"resolved": "https://registry.npmjs.org/source-map-support/-/source-map-support-0.5.13.tgz", - Network accessline 4840
"node_modules/split2": { "version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - Network accessline 4841
"version": "4.2.0", "resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", "integrity": "sha512-UcjcJOWknrNkF6PLX83qcHM6KHgVKNkV62Y8a5uYDVv9ydGQVwAHMKqHdJje1VTWpljG0WYpCDhrCdAOYH4TWg==", - Network accessline 4842
"resolved": "https://registry.npmjs.org/split2/-/split2-4.2.0.tgz", - Network accessline 4850
"node_modules/sprintf-js": { "version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - Network accessline 4851
"version": "1.0.3", "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", - Network accessline 4852
"resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", - Network accessline 4857
"node_modules/stack-utils": { "version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - Network accessline 4858
"version": "2.0.6", "resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", "integrity": "sha512-XlkWvfIm6RmsWtNJx+uqtKLS8eqFbxUg0ZzLXqY0caEy9l7hruX8IpiDnjsLavoBgqCCR71TqWO8MaXYheJ3RQ==", - Network accessline 4859
"resolved": "https://registry.npmjs.org/stack-utils/-/stack-utils-2.0.6.tgz", - Network accessline 4870
"node_modules/string_decoder": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - Network accessline 4871
"version": "1.3.0", "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", - Network accessline 4872
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz", - Network accessline 4880
"node_modules/string-length": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - Network accessline 4881
"version": "4.0.2", "resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", "integrity": "sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==", - Network accessline 4882
"resolved": "https://registry.npmjs.org/string-length/-/string-length-4.0.2.tgz", - Network accessline 4894
"node_modules/string-width": { "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - Network accessline 4895
"version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - Network accessline 4896
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - Network accessline 4910
"name": "string-width", "version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - Network accessline 4911
"version": "4.2.3", "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==", - Network accessline 4912
"resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz", - Network accessline 4925
"node_modules/strip-ansi": { "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - Network accessline 4926
"version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - Network accessline 4927
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - Network accessline 4939
"name": "strip-ansi", "version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - Network accessline 4940
"version": "6.0.1", "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==", - Network accessline 4941
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz", - Network accessline 4952
"node_modules/strip-bom": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - Network accessline 4953
"version": "4.0.0", "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", "integrity": "sha512-3xurFv5tEgii33Zi8Jtp55wEIILR9eh34FAW00PZf+JnSsTmV/ioewSgQl97JHvgjoRGwPShsWm+IdrxB35d0w==", - Network accessline 4954
"resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-4.0.0.tgz", - Network accessline 4962
"node_modules/strip-final-newline": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - Network accessline 4963
"version": "2.0.0", "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", "integrity": "sha512-BrpvfNAE3dcvq7ll3xVumzjKjZQ5tI1sEUIKr3Uoks0XUl45St3FlatVqef9prk4jRDzhW6WZg+3bk93y6pLjA==", - Network accessline 4964
"resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-2.0.0.tgz", - Network accessline 4972
"node_modules/strip-json-comments": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - Network accessline 4973
"version": "3.1.1", "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", - Network accessline 4974
"resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", - Network accessline 4980
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 4981
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 4982
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 4985
"node_modules/supports-color": { "version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - Network accessline 4986
"version": "7.2.0", "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==", - Network accessline 4987
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz", - Network accessline 4998
"node_modules/synckit": { "version": "0.11.12", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz", - Network accessline 4999
"version": "0.11.12", "resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz", "integrity": "sha512-Bh7QjT8/SuKUIfObSXNHNSK6WHo6J1tHCqJsuaFDP7gP0fkzSfTxI8y85JrppZ0h8l0maIgc2tfuZQ6/t3GtnQ==", - Network accessline 5000
"resolved": "https://registry.npmjs.org/synckit/-/synckit-0.11.12.tgz", - Network accessline 5009
}, "funding": { "url": "https://opencollective.com/synckit" - Network accessline 5010
"funding": { "url": "https://opencollective.com/synckit" } - Network accessline 5011
"url": "https://opencollective.com/synckit" - Network accessline 5014
"node_modules/tar": { "version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - Network accessline 5015
"version": "6.2.1", "resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", "integrity": "sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==", - Network accessline 5016
"resolved": "https://registry.npmjs.org/tar/-/tar-6.2.1.tgz", - Network accessline 5033
"node_modules/tar/node_modules/minipass": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - Network accessline 5034
"version": "5.0.0", "resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", "integrity": "sha512-3FnjYuehv9k6ovOEbyOswadCDPX1piCfhV8ncmYtHOjuPwylVWsghTLo7rabjC3Rx5xD4HDx8Wm1xnMF7S5qFQ==", - Network accessline 5035
"resolved": "https://registry.npmjs.org/minipass/-/minipass-5.0.0.tgz", - Network accessline 5043
"node_modules/test-exclude": { "version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - Network accessline 5044
"version": "6.0.0", "resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", "integrity": "sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==", - Network accessline 5045
"resolved": "https://registry.npmjs.org/test-exclude/-/test-exclude-6.0.0.tgz", - Network accessline 5058
"node_modules/test-exclude/node_modules/brace-expansion": { "version": "1.1.12", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - Network accessline 5059
"version": "1.1.12", "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", "integrity": "sha512-9T9UjW3r0UW5c1Q7GTwllptXwhvYmEzFhzMfZ9H7FQWt+uZePjZPjBP/W1ZEyZ1twGWom5/56TF4lPcqjnDHcg==", - Network accessline 5060
"resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.12.tgz", - Network accessline 5069
"node_modules/test-exclude/node_modules/glob": { "version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - Network accessline 5070
"version": "7.2.3", "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", "integrity": "sha512-nFR0zLpU2YCaRxwoCJvL6UvCH2JFyFVIvwTLsIf21AuHlMskA1hhTdk+LlYJtOlYt9v6dvszD2BGRqBL+iQK9Q==", - Network accessline 5071
"resolved": "https://registry.npmjs.org/glob/-/glob-7.2.3.tgz", - Network accessline 5086
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 5087
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 5088
"url": "https://github.com/sponsors/isaacs" - Network accessline 5091
"node_modules/test-exclude/node_modules/minimatch": { "version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - Network accessline 5092
"version": "3.1.2", "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", "integrity": "sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==", - Network accessline 5093
"resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.1.2.tgz", - Network accessline 5104
"node_modules/through2": { "version": "4.0.2", "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - Network accessline 5105
"version": "4.0.2", "resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", "integrity": "sha512-iOqSav00cVxEEICeD7TjLB1sueEL+81Wpzp2bY17uZjZN0pWZPuo4suZ/61VujxmqSGFfgOcNuTZ85QJwNZQpw==", - Network accessline 5106
"resolved": "https://registry.npmjs.org/through2/-/through2-4.0.2.tgz", - Network accessline 5114
"node_modules/tmpl": { "version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - Network accessline 5115
"version": "1.0.5", "resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", "integrity": "sha512-3f0uOEAQwIqGuWW2MVzYg8fV/QNnc/IpuJNG837rLuczAaLVHslWHZQj4IGiEl5Hs3kkbhwL9Ab7Hrsmuj+Smw==", - Network accessline 5116
"resolved": "https://registry.npmjs.org/tmpl/-/tmpl-1.0.5.tgz", - Network accessline 5121
"node_modules/to-regex-range": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - Network accessline 5122
"version": "5.0.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", - Network accessline 5123
"resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - Network accessline 5134
"node_modules/tree-kill": { "version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - Network accessline 5135
"version": "1.2.2", "resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", "integrity": "sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==", - Network accessline 5136
"resolved": "https://registry.npmjs.org/tree-kill/-/tree-kill-1.2.2.tgz", - Network accessline 5144
"node_modules/ts-jest": { "version": "29.4.6", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", - Network accessline 5145
"version": "29.4.6", "resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", "integrity": "sha512-fSpWtOO/1AjSNQguk43hb/JCo16oJDnMJf3CdEGNkqsEX3t0KX96xvyX1D7PfLCpVoKu4MfVrqUkFyblYoY4lA==", - Network accessline 5146
"resolved": "https://registry.npmjs.org/ts-jest/-/ts-jest-29.4.6.tgz", - Network accessline 5197
"node_modules/ts-jest/node_modules/type-fest": { "version": "4.41.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", - Network accessline 5198
"version": "4.41.0", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", "integrity": "sha512-TeTSQ6H5YHvpqVwBRcnLDCBnDOHWYu7IvGbHT6N8AOymcr9PJGjc1GTtiWZTYg0NCgYwvnYWEkVChQAr9bjfwA==", - Network accessline 5199
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-4.41.0.tgz", - Network accessline 5205
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 5206
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 5207
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 5210
"node_modules/ts-node": { "version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - Network accessline 5211
"version": "10.9.2", "resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", "integrity": "sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==", - Network accessline 5212
"resolved": "https://registry.npmjs.org/ts-node/-/ts-node-10.9.2.tgz", - Network accessline 5254
"node_modules/tslib": { "version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - Network accessline 5255
"version": "2.8.1", "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", - Network accessline 5256
"resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", - Network accessline 5260
"node_modules/type-detect": { "version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - Network accessline 5261
"version": "4.0.8", "resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", "integrity": "sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==", - Network accessline 5262
"resolved": "https://registry.npmjs.org/type-detect/-/type-detect-4.0.8.tgz", - Network accessline 5270
"node_modules/type-fest": { "version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - Network accessline 5271
"version": "0.21.3", "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==", - Network accessline 5272
"resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz", - Network accessline 5278
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 5279
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 5280
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 5283
"node_modules/typescript": { "version": "5.9.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - Network accessline 5284
"version": "5.9.3", "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", "integrity": "sha512-jl1vZzPDinLr9eUt3J/t7V6FgNEw9QjvBPdysz9KfQDD41fQrC2Y4vKQdiaUpFT4bXlb1RHhLpp8wtm6M5TgSw==", - Network accessline 5285
"resolved": "https://registry.npmjs.org/typescript/-/typescript-5.9.3.tgz", - Network accessline 5297
"node_modules/uglify-js": { "version": "3.19.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", - Network accessline 5298
"version": "3.19.3", "resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", "integrity": "sha512-v3Xu+yuwBXisp6QYTcH4UbH+xYJXqnq2m/LtQVWKWzYc1iehYnLixoQDN9FH6/j9/oybfd6W9Ghwkl8+UMKTKQ==", - Network accessline 5299
"resolved": "https://registry.npmjs.org/uglify-js/-/uglify-js-3.19.3.tgz", - Network accessline 5311
"node_modules/undici-types": { "version": "7.18.2", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", - Network accessline 5312
"version": "7.18.2", "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", "integrity": "sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==", - Network accessline 5313
"resolved": "https://registry.npmjs.org/undici-types/-/undici-types-7.18.2.tgz", - Network accessline 5318
"node_modules/universalify": { "version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - Network accessline 5319
"version": "2.0.1", "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - Network accessline 5320
"resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - Network accessline 5328
"node_modules/unrs-resolver": { "version": "1.11.1", "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", - Network accessline 5329
"version": "1.11.1", "resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", "integrity": "sha512-bSjt9pjaEBnNiGgc9rUiHGKv5l4/TGzDmYw3RhnkJGtLhbnnA/5qJj7x3dNDCRx/PJxu774LlH8lCOlB4hEfKg==", - Network accessline 5330
"resolved": "https://registry.npmjs.org/unrs-resolver/-/unrs-resolver-1.11.1.tgz", - Network accessline 5337
}, "funding": { "url": "https://opencollective.com/unrs-resolver" - Network accessline 5338
"funding": { "url": "https://opencollective.com/unrs-resolver" }, - Network accessline 5339
"url": "https://opencollective.com/unrs-resolver" - Network accessline 5363
"node_modules/untildify": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - Network accessline 5364
"version": "4.0.0", "resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", "integrity": "sha512-KK8xQ1mkzZeg9inewmFVDNkg3l5LUhoq9kN6iWYB/CC9YMG8HA+c1Q8HwDe6dEX7kErrEVNVBO3fWsVq5iDgtw==", - Network accessline 5365
"resolved": "https://registry.npmjs.org/untildify/-/untildify-4.0.0.tgz", - Network accessline 5373
"node_modules/update-browserslist-db": { "version": "1.2.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - Network accessline 5374
"version": "1.2.3", "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", "integrity": "sha512-Js0m9cx+qOgDxo0eMiFGEueWztz+d4+M3rGlmKPT+T4IS/jP4ylw3Nwpu6cpTTP8R1MAC1kF4VbdLt3ARf209w= - Network accessline 5375
"resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.2.3.tgz", - Network accessline 5379
{ "type": "opencollective", "url": "https://opencollective.com/browserslist" - Network accessline 5380
"type": "opencollective", "url": "https://opencollective.com/browserslist" }, - Network accessline 5381
"url": "https://opencollective.com/browserslist" - Network accessline 5383
{ "type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" - Network accessline 5384
"type": "tidelift", "url": "https://tidelift.com/funding/github/npm/browserslist" }, - Network accessline 5385
"url": "https://tidelift.com/funding/github/npm/browserslist" - Network accessline 5387
{ "type": "github", "url": "https://github.com/sponsors/ai" - Network accessline 5388
"type": "github", "url": "https://github.com/sponsors/ai" } - Network accessline 5389
"url": "https://github.com/sponsors/ai" - Network accessline 5404
"node_modules/util-deprecate": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - Network accessline 5405
"version": "1.0.2", "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", - Network accessline 5406
"resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz", - Network accessline 5411
"node_modules/v8-compile-cache-lib": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - Network accessline 5412
"version": "3.0.1", "resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", "integrity": "sha512-wa7YjyUGfNZngI/vtK0UHAN+lgDCxBPCylVXGp0zu59Fz5aiGtNXaq3DhIov063MorB+VfufLh3JlF2KdTK3xg==", - Network accessline 5413
"resolved": "https://registry.npmjs.org/v8-compile-cache-lib/-/v8-compile-cache-lib-3.0.1.tgz", - Network accessline 5418
"node_modules/v8-to-istanbul": { "version": "9.3.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", - Network accessline 5419
"version": "9.3.0", "resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", "integrity": "sha512-kiGUalWN+rgBJ/1OHZsBtU4rXZOfj/7rKQxULKlIzwzQSvMJUUNgPwJEEh7gU6xEVxC0ahoOBvN2YI8GH6FNgA==", - Network accessline 5420
"resolved": "https://registry.npmjs.org/v8-to-istanbul/-/v8-to-istanbul-9.3.0.tgz", - Network accessline 5433
"node_modules/walker": { "version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - Network accessline 5434
"version": "1.0.8", "resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", "integrity": "sha512-ts/8E8l5b7kY0vlWLewOkDXMmPdLcVV4GmOQLyxuSswIJsweeFZtAsMF7k1Nszz+TYBQrlYRmzOnr398y1JemQ==", - Network accessline 5435
"resolved": "https://registry.npmjs.org/walker/-/walker-1.0.8.tgz", - Network accessline 5443
"node_modules/which": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - Network accessline 5444
"version": "2.0.2", "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - Network accessline 5445
"resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - Network accessline 5459
"node_modules/wordwrap": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - Network accessline 5460
"version": "1.0.0", "resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", "integrity": "sha512-gvVzJFlPycKc5dZN4yPkP8w7Dc37BtP1yczEneOb4uq34pXZcvrtRTmWV8W+Ume+XCxKgbjM+nevkyFPMybd4Q==", - Network accessline 5461
"resolved": "https://registry.npmjs.org/wordwrap/-/wordwrap-1.0.0.tgz", - Network accessline 5466
"node_modules/wrap-ansi": { "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - Network accessline 5467
"version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - Network accessline 5468
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - Network accessline 5479
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 5480
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 5481
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 5485
"name": "wrap-ansi", "version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - Network accessline 5486
"version": "7.0.0", "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", "integrity": "sha512-YVGIj2kamLSTxw6NsZjoBxfSwsn0ycdesmc4p+Q21c5zPuZ1pl+NfxVdxPtdHvmNVOQ6XSYG4AUtyt/Fi7D16Q==", - Network accessline 5487
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-7.0.0.tgz", - Network accessline 5498
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 5499
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 5500
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 5503
"node_modules/wrappy": { "version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - Network accessline 5504
"version": "1.0.2", "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", "integrity": "sha512-l4Sp/DRseor9wL6EvV2+TuQn63dMkPjZ/sp9XkghTEbV9KlPS1xUsZ3u7/IQO4wxtcFB4bgpQPRcR3QCvezPcQ==", - Network accessline 5505
"resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz", - Network accessline 5510
"node_modules/write-file-atomic": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - Network accessline 5511
"version": "5.0.1", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", "integrity": "sha512-+QU2zd6OTD8XWIJCbffaiQeH9U73qIqafo1x6V1snCWYGJf6cVE0cDR4D8xRzcEnfI21IFrUPzPGtcPf8AC+Rw==", - Network accessline 5512
"resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-5.0.1.tgz", - Network accessline 5524
"node_modules/write-file-atomic/node_modules/signal-exit": { "version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 5525
"version": "4.1.0", "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", - Network accessline 5526
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - Network accessline 5532
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 5533
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 5534
"url": "https://github.com/sponsors/isaacs" - Network accessline 5537
"node_modules/xml2js": { "version": "0.5.0", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - Network accessline 5538
"version": "0.5.0", "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", "integrity": "sha512-drPFnkQJik/O+uPKpqSgr22mpuFHqKdbS835iAQrUC73L2F5WkboIRd63ai/2Yg6I1jzifPFKH2NTK+cfglkIA==", - Network accessline 5539
"resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.5.0.tgz", - Network accessline 5551
"node_modules/xml2js/node_modules/xmlbuilder": { "version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - Network accessline 5552
"version": "11.0.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==", - Network accessline 5553
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", - Network accessline 5561
"node_modules/xmlbuilder": { "version": "15.1.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - Network accessline 5562
"version": "15.1.1", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", "integrity": "sha512-yMqGBqtXyeN1e3TGYvgNgDVZ3j84W4cwkOXQswghol6APgZWaff9lnbvN7MHYJOiXsvGPXtjTYJEiC9J2wv9Eg==", - Network accessline 5563
"resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-15.1.1.tgz", - Network accessline 5571
"node_modules/y18n": { "version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - Network accessline 5572
"version": "5.0.8", "resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", "integrity": "sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==", - Network accessline 5573
"resolved": "https://registry.npmjs.org/y18n/-/y18n-5.0.8.tgz", - Network accessline 5581
"node_modules/yallist": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - Network accessline 5582
"version": "4.0.0", "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", - Network accessline 5583
"resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", - Network accessline 5588
"node_modules/yargs": { "version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - Network accessline 5589
"version": "17.7.2", "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==", - Network accessline 5590
"resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz", - Network accessline 5607
"node_modules/yargs-parser": { "version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - Network accessline 5608
"version": "21.1.1", "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==", - Network accessline 5609
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz", - Network accessline 5617
"node_modules/yauzl": { "version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - Network accessline 5618
"version": "2.10.0", "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", "integrity": "sha512-p4a9I6X6nu6IhoGmBqAcbJy1mlC4j27vEPZX9F4L4/vZT3Lyq1VkFHw/V/PUcB9Buo+DG3iHkT0x3Qya58zc3g==", - Network accessline 5619
"resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz", - Network accessline 5628
"node_modules/yn": { "version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - Network accessline 5629
"version": "3.1.1", "resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", "integrity": "sha512-Ux4ygGWsu2c7isFWe8Yu1YluJmqVhxqK2cLXNQA5AcC3QfbGNpM7fu0Y8b/z16pXLnFxZYvWhd3fhBY9DLmC6Q==", - Network accessline 5630
"resolved": "https://registry.npmjs.org/yn/-/yn-3.1.1.tgz", - Network accessline 5638
"node_modules/yocto-queue": { "version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - Network accessline 5639
"version": "0.1.0", "resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", "integrity": "sha512-rVksvsnNCdJ/ohGc6xgPwyN8eheCxsiLM8mxuE/t/mOVqJewPuO1miLpTHQiRgTKCLexL4MeAFVagts7HmNZ2Q==", - Network accessline 5640
"resolved": "https://registry.npmjs.org/yocto-queue/-/yocto-queue-0.1.0.tgz", - Network accessline 5646
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 5647
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 5648
"url": "https://github.com/sponsors/sindresorhus"
mobile/rho-android/package.json
- Executable scriptline 1
Executable file
mobile/rho-android/src/app-lifecycle.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/connection-coordinator.ts
- Executable scriptline 1
Executable file - Network accessline 77
try { const response = await fetch(authUrl.toString(), { - Network accessline 78
const response = await fetch(authUrl.toString(), { - Network accessline 138
const url = new URL(`${profile.scheme}://${profile.host}:${profile.port}`); const authUrl = new URL('/api/auth/logout', url); await fetch(authUrl.toString(), { - Network accessline 139
const authUrl = new URL('/api/auth/logout', url); await fetch(authUrl.toString(), { method: 'POST', - Network accessline 140
await fetch(authUrl.toString(), {
mobile/rho-android/src/http-policy.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/index.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/live-mode-controller.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/mapConnectionErrorToMessage.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/models/profile.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/replay-resume.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/session-monitor.ts
mobile/rho-android/src/storage/profile-repository.ts
- Executable scriptline 1
Executable file
mobile/rho-android/src/storage/secure-token-store.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/android-strings.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/app-lifecycle.test.ts
- Executable scriptline 1
Executable file - Network accessline 47
mockProfileRepo.getLastUsedProfileId.mockResolvedValue('p1'); mockProfileRepo.getProfiles.mockResolvedValue([profile1]); mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 49
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 53
expect(mockCoordinator.connect).toHaveBeenCalledWith('p1'); expect(view.showWebContainer).toHaveBeenCalledWith('http://localhost:8080/'); - Network accessline 54
expect(view.showWebContainer).toHaveBeenCalledWith('http://localhost:8080/'); - Network accessline 93
mockProfileRepo.getLastUsedProfileId.mockResolvedValue('p2'); mockProfileRepo.getProfiles.mockResolvedValue([profile1, profile2]); mockCoordinator.connect.mockResolvedValue({ success: true, url: 'https://192.168.1.50:8443/' }); - Network accessline 95
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'https://192.168.1.50:8443/' }); - Network accessline 121
describe('connect', () => { it('opens container on success and sets active profile', async () => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 123
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 127
expect(view.showWebContainer).toHaveBeenCalledWith('http://localhost:8080/'); - Network accessline 150
describe('switchProfile', () => { it('disconnects active profile, clears container, and refreshes picker', async () => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 151
it('disconnects active profile, clears container, and refreshes picker', async () => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); await lifecycle.connect('p1'); - Network accessline 152
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 165
it('still tears down UI and clears active profile when disconnect throws', async () => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 166
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 189
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 190
await lifecycle.connect('p1'); expect(lifecycle.getActiveProfileId()).toBe('p1'); expect(view.showWebContainer).toHaveBeenLastCalledWith('http://localhost:8080/'); - Network accessline 192
expect(view.showWebContainer).toHaveBeenLastCalledWith('http://localhost:8080/'); - Network accessline 202
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'https://192.168.1.50:8443/' }); - Network accessline 203
await lifecycle.connect('p2'); expect(lifecycle.getActiveProfileId()).toBe('p2'); expect(view.showWebContainer).toHaveBeenLastCalledWith('https://192.168.1.50:8443/'); - Network accessline 204
expect(lifecycle.getActiveProfileId()).toBe('p2'); expect(view.showWebContainer).toHaveBeenLastCalledWith('https://192.168.1.50:8443/'); }); - Network accessline 205
expect(view.showWebContainer).toHaveBeenLastCalledWith('https://192.168.1.50:8443/'); - Network accessline 222
describe('handleAuthFailure', () => { beforeEach(() => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); - Network accessline 223
beforeEach(() => { mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' }); }); - Network accessline 224
mockCoordinator.connect.mockResolvedValue({ success: true, url: 'http://localhost:8080/' });
mobile/rho-android/tests/capacitor-config.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/connection-coordinator.test.ts
- Executable scriptline 1
Executable file - Network accessline 48
expect(result.success).toBe(true); if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); - Network accessline 49
if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); } - Network accessline 50
expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); - Network accessline 53
expect(global.fetch).toHaveBeenCalledWith( 'http://localhost:8080/api/auth/exchange', - Network accessline 54
'http://localhost:8080/api/auth/exchange', - Network accessline 86
expect(result.success).toBe(true); if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); - Network accessline 87
if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); } - Network accessline 88
expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); } expect(global.fetch).not.toHaveBeenCalled(); - Network accessline 103
expect(result.success).toBe(true); if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); - Network accessline 104
if (result.success) { expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); } - Network accessline 105
expect(result.url).toBe('http://localhost:8080/?mobile_shell=1'); - Network accessline 117
expect(global.fetch).toHaveBeenCalledWith( 'http://localhost:8080/api/auth/logout', - Network accessline 118
'http://localhost:8080/api/auth/logout', - Network accessline 148
await coordinator.disconnect('test-1'); expect(global.fetch).toHaveBeenCalledWith( 'http://localhost:8080/api/auth/logout', - Network accessline 149
expect(global.fetch).toHaveBeenCalledWith( 'http://localhost:8080/api/auth/logout', expect.objectContaining({ method: 'POST', credentials: 'include' }) - Network accessline 150
'http://localhost:8080/api/auth/logout', - Network accessline 157
expect(res2.success).toBe(true); if (res2.success) { expect(res2.url).toBe('https://example.com:8443/?mobile_shell=1'); - Network accessline 158
if (res2.success) { expect(res2.url).toBe('https://example.com:8443/?mobile_shell=1'); } - Network accessline 159
expect(res2.url).toBe('https://example.com:8443/?mobile_shell=1'); } expect(global.fetch).toHaveBeenCalledWith( - Network accessline 160
} expect(global.fetch).toHaveBeenCalledWith( 'https://example.com:8443/api/auth/exchange', - Network accessline 161
expect(global.fetch).toHaveBeenCalledWith( 'https://example.com:8443/api/auth/exchange', expect.objectContaining({ method: 'POST', credentials: 'include' }) - Network accessline 162
'https://example.com:8443/api/auth/exchange',
mobile/rho-android/tests/http-policy.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/live-mode-controller.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/mapConnectionErrorToMessage.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/profile-validation.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/replay-resume.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/tests/session-monitor.test.ts
mobile/rho-android/tests/storage.test.ts
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/app-lifecycle.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/connection-coordinator.js
- Executable scriptline 1
Executable file - Network accessline 49
const authUrl = new URL('/api/auth/exchange', url); try { const response = await fetch(authUrl.toString(), { - Network accessline 50
try { const response = await fetch(authUrl.toString(), { method: 'POST', - Network accessline 51
const response = await fetch(authUrl.toString(), { - Network accessline 107
const url = new URL(`${profile.scheme}://${profile.host}:${profile.port}`); const authUrl = new URL('/api/auth/logout', url); await fetch(authUrl.toString(), { - Network accessline 108
const authUrl = new URL('/api/auth/logout', url); await fetch(authUrl.toString(), { method: 'POST', - Network accessline 109
await fetch(authUrl.toString(), {
mobile/rho-android/www/js/http-policy.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/index.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/live-mode-controller.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/mapConnectionErrorToMessage.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/models/profile.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/replay-resume.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/session-monitor.js
- Executable scriptline 1
Executable file - Network accessline 49
const statusUrl = new URL('/api/auth/status', url); try { const response = await fetch(statusUrl.toString(), { - Network accessline 50
try { const response = await fetch(statusUrl.toString(), { method: 'GET', - Network accessline 51
const response = await fetch(statusUrl.toString(), {
mobile/rho-android/www/js/storage/profile-repository.js
- Executable scriptline 1
Executable file
mobile/rho-android/www/js/storage/secure-token-store.js
- Executable scriptline 1
Executable file
package-lock.json
- Network accessline 820
"funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" - Network accessline 821
"type": "github", "url": "https://github.com/sponsors/Borewit" } - Network accessline 822
"url": "https://github.com/sponsors/Borewit" - Network accessline 887
}, "funding": { "url": "https://github.com/chalk/ansi-regex?sponsor=1" - Network accessline 888
"funding": { "url": "https://github.com/chalk/ansi-regex?sponsor=1" } - Network accessline 889
"url": "https://github.com/chalk/ansi-regex?sponsor=1" - Network accessline 898
}, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 899
"funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" } - Network accessline 900
"url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 919
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 920
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 921
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 933
}, "funding": { "url": "https://github.com/chalk/strip-ansi?sponsor=1" - Network accessline 934
"funding": { "url": "https://github.com/chalk/strip-ansi?sponsor=1" } - Network accessline 935
"url": "https://github.com/chalk/strip-ansi?sponsor=1" - Network accessline 949
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 950
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 951
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 1050
"license": "MIT", "funding": { "url": "https://github.com/sponsors/colinhacks" - Network accessline 1051
"funding": { "url": "https://github.com/sponsors/colinhacks" } - Network accessline 1052
"url": "https://github.com/sponsors/colinhacks" - Network accessline 1744
"funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" - Network accessline 1745
"type": "github", "url": "https://github.com/sponsors/Borewit" } - Network accessline 1746
"url": "https://github.com/sponsors/Borewit" - Network accessline 1790
"funding": { "type": "github", "url": "https://github.com/sponsors/epoberezkin" - Network accessline 1791
"type": "github", "url": "https://github.com/sponsors/epoberezkin" } - Network accessline 1792
"url": "https://github.com/sponsors/epoberezkin" - Network accessline 1828
}, "funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 1829
"funding": { "url": "https://github.com/chalk/ansi-styles?sponsor=1" } - Network accessline 1830
"url": "https://github.com/chalk/ansi-styles?sponsor=1" - Network accessline 1858
{ "type": "github", "url": "https://github.com/sponsors/feross" - Network accessline 1859
"type": "github", "url": "https://github.com/sponsors/feross" }, - Network accessline 1860
"url": "https://github.com/sponsors/feross" - Network accessline 1862
{ "type": "patreon", "url": "https://www.patreon.com/feross" - Network accessline 1863
"type": "patreon", "url": "https://www.patreon.com/feross" }, - Network accessline 1864
"url": "https://www.patreon.com/feross" - Network accessline 1866
{ "type": "consulting", "url": "https://feross.org/support" - Network accessline 1867
"type": "consulting", "url": "https://feross.org/support" } - Network accessline 1868
"url": "https://feross.org/support" - Network accessline 1913
}, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 1914
"funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } - Network accessline 1915
"url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 1948
}, "funding": { "url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 1949
"funding": { "url": "https://github.com/chalk/chalk?sponsor=1" } - Network accessline 1950
"url": "https://github.com/chalk/chalk?sponsor=1" - Network accessline 2125
{ "type": "github", "url": "https://github.com/sponsors/fastify" - Network accessline 2126
"type": "github", "url": "https://github.com/sponsors/fastify" }, - Network accessline 2127
"url": "https://github.com/sponsors/fastify" - Network accessline 2129
{ "type": "opencollective", "url": "https://opencollective.com/fastify" - Network accessline 2130
"type": "opencollective", "url": "https://opencollective.com/fastify" } - Network accessline 2131
"url": "https://opencollective.com/fastify" - Network accessline 2140
{ "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" - Network accessline 2141
"type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } - Network accessline 2142
"url": "https://github.com/sponsors/NaturalIntelligence" - Network accessline 2157
{ "type": "github", "url": "https://github.com/sponsors/jimmywarting" - Network accessline 2158
"type": "github", "url": "https://github.com/sponsors/jimmywarting" }, - Network accessline 2159
"url": "https://github.com/sponsors/jimmywarting" - Network accessline 2161
{ "type": "paypal", "url": "https://paypal.me/jimmywarting" - Network accessline 2162
"type": "paypal", "url": "https://paypal.me/jimmywarting" } - Network accessline 2163
"url": "https://paypal.me/jimmywarting" - Network accessline 2187
}, "funding": { "url": "https://github.com/sindresorhus/file-type?sponsor=1" - Network accessline 2188
"funding": { "url": "https://github.com/sindresorhus/file-type?sponsor=1" } - Network accessline 2189
"url": "https://github.com/sindresorhus/file-type?sponsor=1" - Network accessline 2202
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2203
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2204
"url": "https://github.com/sponsors/isaacs" - Network accessline 2213
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2214
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2215
"url": "https://github.com/sponsors/isaacs" - Network accessline 2270
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 2271
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 2272
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 2307
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2308
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2309
"url": "https://github.com/sponsors/isaacs" - Network accessline 2409
{ "type": "github", "url": "https://github.com/sponsors/feross" - Network accessline 2410
"type": "github", "url": "https://github.com/sponsors/feross" }, - Network accessline 2411
"url": "https://github.com/sponsors/feross" - Network accessline 2413
{ "type": "patreon", "url": "https://www.patreon.com/feross" - Network accessline 2414
"type": "patreon", "url": "https://www.patreon.com/feross" }, - Network accessline 2415
"url": "https://www.patreon.com/feross" - Network accessline 2417
{ "type": "consulting", "url": "https://feross.org/support" - Network accessline 2418
"type": "consulting", "url": "https://feross.org/support" } - Network accessline 2419
"url": "https://feross.org/support" - Network accessline 2459
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2460
"funding": { "url": "https://github.com/sponsors/isaacs" }, - Network accessline 2461
"url": "https://github.com/sponsors/isaacs" - Network accessline 2553
"funding": { "type": "opencollective", "url": "https://opencollective.com/express" - Network accessline 2554
"type": "opencollective", "url": "https://opencollective.com/express" } - Network accessline 2555
"url": "https://opencollective.com/express" - Network accessline 2567
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2568
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2569
"url": "https://github.com/sponsors/isaacs" - Network accessline 2607
{ "type": "github", "url": "https://github.com/sponsors/jimmywarting" - Network accessline 2608
"type": "github", "url": "https://github.com/sponsors/jimmywarting" }, - Network accessline 2609
"url": "https://github.com/sponsors/jimmywarting" - Network accessline 2611
{ "type": "github", "url": "https://paypal.me/jimmywarting" - Network accessline 2612
"type": "github", "url": "https://paypal.me/jimmywarting" } - Network accessline 2613
"url": "https://paypal.me/jimmywarting" - Network accessline 2633
"funding": { "type": "opencollective", "url": "https://opencollective.com/node-fetch" - Network accessline 2634
"type": "opencollective", "url": "https://opencollective.com/node-fetch" } - Network accessline 2635
"url": "https://opencollective.com/node-fetch" - Network accessline 2742
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2743
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2744
"url": "https://github.com/sponsors/isaacs" - Network accessline 2844
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2845
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2846
"url": "https://github.com/sponsors/isaacs" - Network accessline 2863
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2864
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2865
"url": "https://github.com/sponsors/isaacs" - Network accessline 2882
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2883
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2884
"url": "https://github.com/sponsors/isaacs" - Network accessline 2897
}, "funding": { "url": "https://github.com/sponsors/isaacs" - Network accessline 2898
"funding": { "url": "https://github.com/sponsors/isaacs" } - Network accessline 2899
"url": "https://github.com/sponsors/isaacs" - Network accessline 2906
{ "type": "github", "url": "https://github.com/sponsors/feross" - Network accessline 2907
"type": "github", "url": "https://github.com/sponsors/feross" }, - Network accessline 2908
"url": "https://github.com/sponsors/feross" - Network accessline 2910
{ "type": "patreon", "url": "https://www.patreon.com/feross" - Network accessline 2911
"type": "patreon", "url": "https://www.patreon.com/feross" }, - Network accessline 2912
"url": "https://www.patreon.com/feross" - Network accessline 2914
{ "type": "consulting", "url": "https://feross.org/support" - Network accessline 2915
"type": "consulting", "url": "https://feross.org/support" } - Network accessline 2916
"url": "https://feross.org/support" - Network accessline 3048
{ "type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" - Network accessline 3049
"type": "github", "url": "https://github.com/sponsors/NaturalIntelligence" } - Network accessline 3050
"url": "https://github.com/sponsors/NaturalIntelligence" - Network accessline 3065
"funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" - Network accessline 3066
"type": "github", "url": "https://github.com/sponsors/Borewit" } - Network accessline 3067
"url": "https://github.com/sponsors/Borewit" - Network accessline 3112
"funding": { "type": "github", "url": "https://github.com/sponsors/Borewit" - Network accessline 3113
"type": "github", "url": "https://github.com/sponsors/Borewit" } - Network accessline 3114
"url": "https://github.com/sponsors/Borewit" - Network accessline 3133
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3134
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3135
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3184
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 3185
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 3186
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 3201
}, "funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 3202
"funding": { "url": "https://github.com/chalk/wrap-ansi?sponsor=1" } - Network accessline 3203
"url": "https://github.com/chalk/wrap-ansi?sponsor=1" - Network accessline 3243
}, "funding": { "url": "https://github.com/sponsors/eemeli" - Network accessline 3244
"funding": { "url": "https://github.com/sponsors/eemeli" } - Network accessline 3245
"url": "https://github.com/sponsors/eemeli" - Network accessline 3279
}, "funding": { "url": "https://github.com/sponsors/sindresorhus" - Network accessline 3280
"funding": { "url": "https://github.com/sponsors/sindresorhus" } - Network accessline 3281
"url": "https://github.com/sponsors/sindresorhus" - Network accessline 3288
"peer": true, "funding": { "url": "https://github.com/sponsors/colinhacks" - Network accessline 3289
"funding": { "url": "https://github.com/sponsors/colinhacks" } - Network accessline 3290
"url": "https://github.com/sponsors/colinhacks" - Network accessline 3301
"node_modules/@biomejs/biome": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.4.tgz", - Network accessline 3302
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.4.tgz", "integrity": "sha512-1rkd7G70+o9KkTn5KLmDYXihGoTaIGO9PIIN2ZB7UJxFrWw04CZHPYiMRjYsaDvVV7hP1dYNRLxSANLaBFGpog==", - Network accessline 3303
"resolved": "https://registry.npmjs.org/@biomejs/biome/-/biome-1.9.4.tgz", - Network accessline 3314
"funding": { "type": "opencollective", "url": "https://opencollective.com/biome" - Network accessline 3315
"type": "opencollective", "url": "https://opencollective.com/biome" }, - Network accessline 3316
"url": "https://opencollective.com/biome" - Network accessline 3329
"node_modules/@biomejs/cli-darwin-arm64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz", - Network accessline 3330
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz", "integrity": "sha512-bFBsPWrNvkdKrNCYeAp+xo2HecOGPAy9WyNyB/jKnnedgzl4W4Hb9ZMzYNbf8dMCGmUdSavlYHiR01QaYR58cw==", - Network accessline 3331
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-arm64/-/cli-darwin-arm64-1.9.4.tgz", - Network accessline 3346
"node_modules/@biomejs/cli-darwin-x64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz", - Network accessline 3347
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz", "integrity": "sha512-ngYBh/+bEedqkSevPVhLP4QfVPCpb+4BBe2p7Xs32dBgs7rh9nY2AIYUL6BgLw1JVXV8GlpKmb/hNiuIxfPfZg==", - Network accessline 3348
"resolved": "https://registry.npmjs.org/@biomejs/cli-darwin-x64/-/cli-darwin-x64-1.9.4.tgz", - Network accessline 3363
"node_modules/@biomejs/cli-linux-arm64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz", - Network accessline 3364
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz", "integrity": "sha512-fJIW0+LYujdjUgJJuwesP4EjIBl/N/TcOX3IvIHJQNsAqvV2CHIogsmA94BPG6jZATS4Hi+xv4SkBBQSt1N4/g==", - Network accessline 3365
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64/-/cli-linux-arm64-1.9.4.tgz", - Network accessline 3380
"node_modules/@biomejs/cli-linux-arm64-musl": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz", - Network accessline 3381
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz", "integrity": "sha512-v665Ct9WCRjGa8+kTr0CzApU0+XXtRgwmzIf1SeKSGAv+2scAlW6JR5PMFo6FzqqZ64Po79cKODKf3/AAmECqA== - Network accessline 3382
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-arm64-musl/-/cli-linux-arm64-musl-1.9.4.tgz", - Network accessline 3397
"node_modules/@biomejs/cli-linux-x64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz", - Network accessline 3398
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz", "integrity": "sha512-lRCJv/Vi3Vlwmbd6K+oQ0KhLHMAysN8lXoCI7XeHlxaajk06u7G+UsFSO01NAs5iYuWKmVZjmiOzJ0OJmGsMwg==", - Network accessline 3399
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64/-/cli-linux-x64-1.9.4.tgz", - Network accessline 3414
"node_modules/@biomejs/cli-linux-x64-musl": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz", - Network accessline 3415
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz", "integrity": "sha512-gEhi/jSBhZ2m6wjV530Yy8+fNqG8PAinM3oV7CyO+6c3CEh16Eizm21uHVsyVBEB6RIM8JHIl6AGYCv6Q6Q9Tg==", - Network accessline 3416
"resolved": "https://registry.npmjs.org/@biomejs/cli-linux-x64-musl/-/cli-linux-x64-musl-1.9.4.tgz", - Network accessline 3431
"node_modules/@biomejs/cli-win32-arm64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz", - Network accessline 3432
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz", "integrity": "sha512-tlbhLk+WXZmgwoIKwHIHEBZUwxml7bRJgk0X2sPyNR3S93cdRq6XulAZRQJ17FYGGzWne0fgrXBKpl7l4M87Hg==", - Network accessline 3433
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-arm64/-/cli-win32-arm64-1.9.4.tgz", - Network accessline 3448
"node_modules/@biomejs/cli-win32-x64": { "version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz", - Network accessline 3449
"version": "1.9.4", "resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz", "integrity": "sha512-8Y5wMhVIPaWe6jw2H+KlEm4wP/f7EW3810ZLmDlrEEy5KvBsb9ECEfu/kMWD484ijfQ8+nIi0giMgu9g1UAuuA==", - Network accessline 3450
"resolved": "https://registry.npmjs.org/@biomejs/cli-win32-x64/-/cli-win32-x64-1.9.4.tgz", - Network accessline 3465
"node_modules/@esbuild/aix-ppc64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", - Network accessline 3466
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", "integrity": "sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==", - Network accessline 3467
"resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.27.3.tgz", - Network accessline 3481
"node_modules/@esbuild/android-arm": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", - Network accessline 3482
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", "integrity": "sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==", - Network accessline 3483
"resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.27.3.tgz", - Network accessline 3497
"node_modules/@esbuild/android-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", - Network accessline 3498
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", "integrity": "sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==", - Network accessline 3499
"resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.27.3.tgz", - Network accessline 3513
"node_modules/@esbuild/android-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", - Network accessline 3514
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", "integrity": "sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==", - Network accessline 3515
"resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.27.3.tgz", - Network accessline 3529
"node_modules/@esbuild/darwin-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz", - Network accessline 3530
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz", "integrity": "sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==", - Network accessline 3531
"resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.27.3.tgz", - Network accessline 3545
"node_modules/@esbuild/darwin-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", - Network accessline 3546
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", "integrity": "sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==", - Network accessline 3547
"resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.27.3.tgz", - Network accessline 3561
"node_modules/@esbuild/freebsd-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", - Network accessline 3562
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", "integrity": "sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==", - Network accessline 3563
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.27.3.tgz", - Network accessline 3577
"node_modules/@esbuild/freebsd-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", - Network accessline 3578
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", "integrity": "sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==", - Network accessline 3579
"resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.27.3.tgz", - Network accessline 3593
"node_modules/@esbuild/linux-arm": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", - Network accessline 3594
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", "integrity": "sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==", - Network accessline 3595
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.27.3.tgz", - Network accessline 3609
"node_modules/@esbuild/linux-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", - Network accessline 3610
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", "integrity": "sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==", - Network accessline 3611
"resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.27.3.tgz", - Network accessline 3625
"node_modules/@esbuild/linux-ia32": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", - Network accessline 3626
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", "integrity": "sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==", - Network accessline 3627
"resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.27.3.tgz", - Network accessline 3641
"node_modules/@esbuild/linux-loong64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", - Network accessline 3642
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", "integrity": "sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==", - Network accessline 3643
"resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.27.3.tgz", - Network accessline 3657
"node_modules/@esbuild/linux-mips64el": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", - Network accessline 3658
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", "integrity": "sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==", - Network accessline 3659
"resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.27.3.tgz", - Network accessline 3673
"node_modules/@esbuild/linux-ppc64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", - Network accessline 3674
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", "integrity": "sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==", - Network accessline 3675
"resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.27.3.tgz", - Network accessline 3689
"node_modules/@esbuild/linux-riscv64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", - Network accessline 3690
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", "integrity": "sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==", - Network accessline 3691
"resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.27.3.tgz", - Network accessline 3705
"node_modules/@esbuild/linux-s390x": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", - Network accessline 3706
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", "integrity": "sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==", - Network accessline 3707
"resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.27.3.tgz", - Network accessline 3721
"node_modules/@esbuild/linux-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", - Network accessline 3722
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", "integrity": "sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==", - Network accessline 3723
"resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.27.3.tgz", - Network accessline 3737
"node_modules/@esbuild/netbsd-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", - Network accessline 3738
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", "integrity": "sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==", - Network accessline 3739
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-arm64/-/netbsd-arm64-0.27.3.tgz", - Network accessline 3753
"node_modules/@esbuild/netbsd-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", - Network accessline 3754
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", "integrity": "sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==", - Network accessline 3755
"resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.27.3.tgz", - Network accessline 3769
"node_modules/@esbuild/openbsd-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", - Network accessline 3770
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", "integrity": "sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==", - Network accessline 3771
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-arm64/-/openbsd-arm64-0.27.3.tgz", - Network accessline 3785
"node_modules/@esbuild/openbsd-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", - Network accessline 3786
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", "integrity": "sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==", - Network accessline 3787
"resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.27.3.tgz", - Network accessline 3801
"node_modules/@esbuild/openharmony-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", - Network accessline 3802
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", "integrity": "sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==", - Network accessline 3803
"resolved": "https://registry.npmjs.org/@esbuild/openharmony-arm64/-/openharmony-arm64-0.27.3.tgz", - Network accessline 3817
"node_modules/@esbuild/sunos-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", - Network accessline 3818
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", "integrity": "sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==", - Network accessline 3819
"resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.27.3.tgz", - Network accessline 3833
"node_modules/@esbuild/win32-arm64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", - Network accessline 3834
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", "integrity": "sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==", - Network accessline 3835
"resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.27.3.tgz", - Network accessline 3849
"node_modules/@esbuild/win32-ia32": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", - Network accessline 3850
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", "integrity": "sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==", - Network accessline 3851
"resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.27.3.tgz", - Network accessline 3865
"node_modules/@esbuild/win32-x64": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", - Network accessline 3866
"version": "0.27.3", "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", "integrity": "sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==", - Network accessline 3867
"resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.27.3.tgz", - Network accessline 3881
"node_modules/@grammyjs/auto-retry": { "version": "2.0.2", "resolved": "https://registry.npmjs.org/@grammyjs/auto-retry/-/auto-retry-2.0.2.tgz", - Network accessline 3882
"version": "2.0.2", "resolved": "https://registry.npmjs.org/@grammyjs/auto-retry/-/auto-retry-2.0.2.tgz", "integrity": "sha512-b4A4p5jlYDiQtW0c0FXYe11WMkYoiW+5rvOaDMCOk1h7Pu2SDl7B7gmFF8cthWCx2+M2nWLOsBxAgbBG4kKWYg==", - Network accessline 3883
"resolved": "https://registry.npmjs.org/@grammyjs/auto-retry/-/auto-retry-2.0.2.tgz", - Network accessline 3896
"node_modules/@grammyjs/types": { "version": "3.24.0", "resolved": "https://registry.npmjs.org/@grammyjs/types/-/types-3.24.0.tgz", - Network accessline 3897
"version": "3.24.0", "resolved": "https://registry.npmjs.org/@grammyjs/types/-/types-3.24.0.tgz", "integrity": "sha512-qQIEs4lN5WqUdr4aT8MeU6UFpMbGYAvcvYSW1A4OO1PABGJQHz/KLON6qvpf+5RxaNDQBxiY2k2otIhg/AG7RQ==", - Network accessline 3898
"resolved": "https://registry.npmjs.org/@grammyjs/types/-/types-3.24.0.tgz", - Network accessline 3902
"node_modules/@highlightjs/cdn-assets": { "version": "11.9.0", "resolved": "https://registry.npmjs.org/@highlightjs/cdn-assets/-/cdn-assets-11.9.0.tgz", - Network accessline 3903
"version": "11.9.0", "resolved": "https://registry.npmjs.org/@highlightjs/cdn-assets/-/cdn-assets-11.9.0.tgz", "integrity": "sha512-F1vJKVAkLwj2Uz2ik1PDc+mDbkrecLI6gcBlAxSRUjyDpMPJjeDBanT9Y2B+xpNe1MT6zSG204Ohm/+nUMCApQ==", - Network accessline 3904
"resolved": "https://registry.npmjs.org/@highlightjs/cdn-assets/-/cdn-assets-11.9.0.tgz", - Network accessline 3911
"node_modules/@hono/node-server": { "version": "1.19.9", "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz", - Network accessline 3912
"version": "1.19.9", "resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz", "integrity": "sha512-vHL6w3ecZsky+8P5MD+eFfaGTyCeOHUIFYMGpQGbrBTSmNNoxv0if69rEZ5giu36weC5saFuznL411gRX7bJDw==", - Network accessline 3913
"resolved": "https://registry.npmjs.org/@hono/node-server/-/node-server-1.19.9.tgz", - Network accessline 3923
"node_modules/@hono/node-ws": { "version": "1.3.0", "resolved": "https://registry.npmjs.org/@hono/node-ws/-/node-ws-1.3.0.tgz", - Network accessline 3924
"version": "1.3.0", "resolved": "https://registry.npmjs.org/@hono/node-ws/-/node-ws-1.3.0.tgz", "integrity": "sha512-ju25YbbvLuXdqBCmLZLqnNYu1nbHIQjoyUqA8ApZOeL1k4skuiTcw5SW77/5SUYo2Xi2NVBJoVlfQurnKEp03Q==", - Network accessline 3925
"resolved": "https://registry.npmjs.org/@hono/node-ws/-/node-ws-1.3.0.tgz", - Network accessline 3955
"node_modules/@vue/reactivity": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", - Network accessline 3956
"version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", "integrity": "sha512-1tdfLmNjWG6t/CsPldh+foumYFo3cpyCHgBYQ34ylaMsJ+SNHQ1kApMIa8jN+i593zQuaw3AdWH0nJTARzCFhg==", - Network accessline 3957
"resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.1.5.tgz", - Network accessline 3964
"node_modules/@vue/shared": { "version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - Network accessline 3965
"version": "3.1.5", "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", "integrity": "sha512-oJ4F3TnvpXaQwZJNF3ZK+kLPHKarDmJjJ6jyzVNDKH9md1dptjC7lWR//jrGuLdek/U6iltWxqAnYOu8gCiOvA==", - Network accessline 3966
"resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.1.5.tgz", - Network accessline 3970
"node_modules/abort-controller": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - Network accessline 3971
"version": "3.0.0", "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", - Network accessline 3972
"resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", - Network accessline 3982
"node_modules/alpinejs": { "version": "3.13.5", "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.13.5.tgz", - Network accessline 3983
"version": "3.13.5", "resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.13.5.tgz", "integrity": "sha512-1d2XeNGN+Zn7j4mUAKXtAgdc4/rLeadyTMWeJGXF5DzwawPBxwTiBhFFm6w/Ei8eJxUZeyNWWSD9zknfdz1kEw==", - Network accessline 3984
"resolved": "https://registry.npmjs.org/alpinejs/-/alpinejs-3.13.5.tgz", - Network accessline 3991
"node_modules/debug": { "version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - Network accessline 3992
"version": "4.4.3", "resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", "integrity": "sha512-RGwwWnwQvkVfavKVt22FGLw+xYSdzARwm0ru6DhTVA3umU5hZc28V3kO4stgYryrTlLpuvgI9GiijltAjNbcqA==", - Network accessline 3993
"resolved": "https://registry.npmjs.org/debug/-/debug-4.4.3.tgz", - Network accessline 4008
"node_modules/esbuild": { "version": "0.27.3", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz", - Network accessline 4009
"version": "0.27.3", "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz", "integrity": "sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==", - Network accessline 4010
"resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.27.3.tgz", - Network accessline 4049
"node_modules/event-target-shim": { "version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - Network accessline 4050
"version": "5.0.1", "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", - Network accessline 4051
"resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", - Network accessline 4058
"node_modules/fsevents": { "version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - Network accessline 4059
"version": "2.3.3", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - Network accessline 4060
"resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - Network accessline 4072
"node_modules/get-tsconfig": { "version": "4.13.6", "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.6.tgz", - Network accessline 4073
"version": "4.13.6", "resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.6.tgz", "integrity": "sha512-shZT/QMiSHc/YBLxxOkMtgSid5HFoauqCE3/exfsEcwg1WkeqjG+V40yBbBrsD+jW2HDXcs28xOfcbm2jI8Ddw==", - Network accessline 4074
"resolved": "https://registry.npmjs.org/get-tsconfig/-/get-tsconfig-4.13.6.tgz", - Network accessline 4079
}, "funding": { "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - Network accessline 4080
"funding": { "url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" } - Network accessline 4081
"url": "https://github.com/privatenumber/get-tsconfig?sponsor=1" - Network accessline 4084
"node_modules/ghostty-web": { "version": "0.4.0", "resolved": "https://registry.npmjs.org/ghostty-web/-/ghostty-web-0.4.0.tgz", - Network accessline 4085
"version": "0.4.0", "resolved": "https://registry.npmjs.org/ghostty-web/-/ghostty-web-0.4.0.tgz", "integrity": "sha512-0puDBik2qapbD/QQBW9o5ZHfXnZBqZWx/ctBiVtKZ6ZLds4NYb+wZuw1cRLXZk9zYovIQ908z3rvFhexAvc5Hg==", - Network accessline 4086
"resolved": "https://registry.npmjs.org/ghostty-web/-/ghostty-web-0.4.0.tgz", - Network accessline 4090
"node_modules/grammy": { "version": "1.40.0", "resolved": "https://registry.npmjs.org/grammy/-/grammy-1.40.0.tgz", - Network accessline 4091
"version": "1.40.0", "resolved": "https://registry.npmjs.org/grammy/-/grammy-1.40.0.tgz", "integrity": "sha512-ssuE7fc1AwqlUxHr931OCVW3fU+oFDjHZGgvIedPKXfTdjXvzP19xifvVGCnPtYVUig1Kz+gwxe4A9M5WdkT4Q==", - Network accessline 4092
"resolved": "https://registry.npmjs.org/grammy/-/grammy-1.40.0.tgz", - Network accessline 4105
"node_modules/hono": { "version": "4.11.9", "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.9.tgz", - Network accessline 4106
"version": "4.11.9", "resolved": "https://registry.npmjs.org/hono/-/hono-4.11.9.tgz", "integrity": "sha512-Eaw2YTGM6WOxA6CXbckaEvslr2Ne4NFsKrvc0v97JD5awbmeBLO5w9Ho9L9kmKonrwF9RJlW6BxT1PVv/agBHQ==", - Network accessline 4107
"resolved": "https://registry.npmjs.org/hono/-/hono-4.11.9.tgz", - Network accessline 4114
"node_modules/marked": { "version": "17.0.4", "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.4.tgz", - Network accessline 4115
"version": "17.0.4", "resolved": "https://registry.npmjs.org/marked/-/marked-17.0.4.tgz", "integrity": "sha512-NOmVMM+KAokHMvjWmC5N/ZOvgmSWuqJB8FoYI019j4ogb/PeRMKoKIjReZ2w3376kkA8dSJIP8uD993Kxc0iRQ==", - Network accessline 4116
"resolved": "https://registry.npmjs.org/marked/-/marked-17.0.4.tgz", - Network accessline 4126
"node_modules/ms": { "version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - Network accessline 4127
"version": "2.1.3", "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", - Network accessline 4128
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", - Network accessline 4132
"node_modules/node-addon-api": { "version": "7.1.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - Network accessline 4133
"version": "7.1.1", "resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", "integrity": "sha512-5m3bsyrjFWE1xf7nz7YXdN4udnVtXK6/Yfgn5qnahL6bCkf2yKt4k3nuTKAtT4r3IG8JNR2ncsIMdZuAzJjHQQ==", - Network accessline 4134
"resolved": "https://registry.npmjs.org/node-addon-api/-/node-addon-api-7.1.1.tgz", - Network accessline 4139
"node_modules/node-fetch": { "version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - Network accessline 4140
"version": "2.7.0", "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", - Network accessline 4141
"resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", - Network accessline 4159
"node_modules/node-pty": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz", - Network accessline 4160
"version": "1.1.0", "resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz", "integrity": "sha512-20JqtutY6JPXTUnL0ij1uad7Qe1baT46lyolh2sSENDd4sTzKZ4nmAFkeAARDKwmlLjPx6XKRlwRUxwjOy+lUg==", - Network accessline 4161
"resolved": "https://registry.npmjs.org/node-pty/-/node-pty-1.1.0.tgz", - Network accessline 4170
"node_modules/resolve-pkg-maps": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - Network accessline 4171
"version": "1.0.0", "resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", "integrity": "sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==", - Network accessline 4172
"resolved": "https://registry.npmjs.org/resolve-pkg-maps/-/resolve-pkg-maps-1.0.0.tgz", - Network accessline 4174
"license": "MIT", "funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - Network accessline 4175
"funding": { "url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" } - Network accessline 4176
"url": "https://github.com/privatenumber/resolve-pkg-maps?sponsor=1" - Network accessline 4179
"node_modules/simple-git-hooks": { "version": "2.13.1", "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.13.1.tgz", - Network accessline 4180
"version": "2.13.1", "resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.13.1.tgz", "integrity": "sha512-WszCLXwT4h2k1ufIXAgsbiTOazqqevFCIncOuUBZJ91DdvWcC5+OFkluWRQPrcuSYd8fjq+o2y1QfWqYMoAToQ==", - Network accessline 4181
"resolved": "https://registry.npmjs.org/simple-git-hooks/-/simple-git-hooks-2.13.1.tgz", - Network accessline 4190
"node_modules/smol-toml": { "version": "1.6.0", "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.6.0.tgz", - Network accessline 4191
"version": "1.6.0", "resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.6.0.tgz", "integrity": "sha512-4zemZi0HvTnYwLfrpk/CF9LOd9Lt87kAt50GnqhMpyF9U3poDAP2+iukq2bZsO/ufegbYehBkqINbsWxj4l4cw==", - Network accessline 4192
"resolved": "https://registry.npmjs.org/smol-toml/-/smol-toml-1.6.0.tgz", - Network accessline 4197
}, "funding": { "url": "https://github.com/sponsors/cyyynthia" - Network accessline 4198
"funding": { "url": "https://github.com/sponsors/cyyynthia" } - Network accessline 4199
"url": "https://github.com/sponsors/cyyynthia" - Network accessline 4202
"node_modules/tr46": { "version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - Network accessline 4203
"version": "0.0.3", "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", - Network accessline 4204
"resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", - Network accessline 4208
"node_modules/tsx": { "version": "4.21.0", "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", - Network accessline 4209
"version": "4.21.0", "resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", "integrity": "sha512-5C1sg4USs1lfG0GFb2RLXsdpXqBSEhAaA/0kPL01wxzpMqLILNxIxIOKiILz+cdg/pLnOUxFYOR5yhHU666wbw==", - Network accessline 4210
"resolved": "https://registry.npmjs.org/tsx/-/tsx-4.21.0.tgz", - Network accessline 4227
"node_modules/webidl-conversions": { "version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - Network accessline 4228
"version": "3.0.1", "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", - Network accessline 4229
"resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", - Network accessline 4233
"node_modules/whatwg-url": { "version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - Network accessline 4234
"version": "5.0.0", "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", - Network accessline 4235
"resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", - Network accessline 4243
"node_modules/ws": { "version": "8.19.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", - Network accessline 4244
"version": "8.19.0", "resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz", "integrity": "sha512-blAT2mjOEIi0ZzruJfIhb3nps74PRWTCz1IjglWEEpQl5XS/UNama6u2/rjFkDDouqr4L67ry+1aGIALViWjDg==", - Network accessline 4245
"resolved": "https://registry.npmjs.org/ws/-/ws-8.19.0.tgz",
package.json
- Executable scriptline 1
Executable file - Network accessline 16
"knowledge-vault" ], "homepage": "https://rhobot.dev", - Network accessline 17
], "homepage": "https://rhobot.dev", "repository": { - Network accessline 18
"homepage": "https://rhobot.dev", - Network accessline 19
"repository": { "type": "git", "url": "https://github.com/mikeyobrien/rho.git" - Network accessline 20
"type": "git", "url": "https://github.com/mikeyobrien/rho.git" }, - Network accessline 21
"url": "https://github.com/mikeyobrien/rho.git" - Network accessline 29
"./skills" ], "image": "https://raw.githubusercontent.com/mikeyobrien/rho/main/docs/logo.png" - Network accessline 30
], "image": "https://raw.githubusercontent.com/mikeyobrien/rho/main/docs/logo.png" }, - Network accessline 31
"image": "https://raw.githubusercontent.com/mikeyobrien/rho/main/docs/logo.png"
platforms/android/extensions/tasker.ts
- Executable scriptline 1
Executable file - Dangerous shell operationline 243
execSync(`rm -f "${resultFile}"`, { stdio: "ignore" }); - Network accessline 764
switch (action) { case "open_url": result = await openUrlAndWait(parts[1] || "https://example.com"); - Network accessline 765
case "open_url": result = await openUrlAndWait(parts[1] || "https://example.com"); break; - Network accessline 766
result = await openUrlAndWait(parts[1] || "https://example.com");
platforms/android/scripts/bin/stt
platforms/android/scripts/bin/stt-send
- Executable scriptline 1
#!/data/data/com.termux/files/usr/bin/bash
platforms/android/skills/notification/SKILL.md
platforms/android/skills/open-url/SKILL.md
- Network accessline 10
termux-open-url https://example.com - Network accessline 15
am start -a android.intent.action.VIEW -d "https://example.com" - Network accessline 45
# Open a specific URL in Chrome am start -n com.android.chrome/com.google.android.apps.chrome.Main -d "https://example.com" - Network accessline 46
am start -n com.android.chrome/com.google.android.apps.chrome.Main -d "https://example.com"
platforms/linux/setup.sh
platforms/linux/skills/clipboard/SKILL.md
- Dangerous shell operationline 13
sudo apt install xclip - Dangerous shell operationline 16
sudo pacman -S xclip - Dangerous shell operationline 19
sudo dnf install xclip - Dangerous shell operationline 60
sudo apt install wl-clipboard - Dangerous shell operationline 63
sudo pacman -S wl-clipboard - Dangerous shell operationline 66
sudo dnf install wl-clipboard
platforms/linux/skills/notification/SKILL.md
platforms/linux/skills/open-url/SKILL.md
platforms/linux/skills/tts/SKILL.md
- Dangerous shell operationline 13
sudo apt install espeak-ng - Dangerous shell operationline 16
sudo pacman -S espeak-ng - Dangerous shell operationline 19
sudo dnf install espeak-ng - Dangerous shell operationline 68
sudo apt install speech-dispatcher - Network accessline 85
For higher quality offline TTS, consider [piper](https://github.com/rhasspy/piper):
platforms/macos/setup.sh
- Executable scriptline 1
#!/bin/bash
platforms/macos/skills/notification/SKILL.md
- Network accessline 35
terminal-notifier -title "Title" -message "Body" terminal-notifier -title "Title" -message "Body" -sound default terminal-notifier -title "Title" -message "Body" -open "https://example.com" - Network accessline 36
terminal-notifier -title "Title" -message "Body" -sound default terminal-notifier -title "Title" -message "Body" -open "https://example.com" terminal-notifier -title "Title" -message "Body" -group "mynotif" # updatable by group - Network accessline 37
terminal-notifier -title "Title" -message "Body" -open "https://example.com"
platforms/macos/skills/open-url/SKILL.md
postinst
ralph-chat-fixes.yml
ralph-chat-ux.yml
- Network accessline 17
- "Read the FULL task file before implementing — the CSS/HTML/JS snippets are suggestions, adapt as needed" - "Do NOT break existing functionality — session viewing, file editing, and tasks must still work" - "The web server is runn - Network accessline 18
- "Do NOT break existing functionality — session viewing, file editing, and tasks must still work" - "The web server is running at http://127.0.0.1:3141" - "Test changes by reading the modified files and verifying syntax" - Network accessline 19
- "The web server is running at http://127.0.0.1:3141" - Network accessline 82
- Check JS syntax (no unclosed functions, brackets match) - Check HTML (templates properly closed) - `curl -s http://127.0.0.1:3141/api/health` (server still up) - Network accessline 83
- Check HTML (templates properly closed) - `curl -s http://127.0.0.1:3141/api/health` (server still up) - If OK → `validation.passed` - Network accessline 84
- `curl -s http://127.0.0.1:3141/api/health` (server still up)
ralph-polish.yml
- Network accessline 18
- "Test at 360px AND 1280px after every change" - "Do NOT modify server.ts unless the task specifically requires it" - "The web server is already running at http://127.0.0.1:3141 in a tmux window" - Network accessline 19
- "Do NOT modify server.ts unless the task specifically requires it" - "The web server is already running at http://127.0.0.1:3141 in a tmux window" - "Use curl to verify API endpoints, not a browser" - Network accessline 20
- "The web server is already running at http://127.0.0.1:3141 in a tmux window" - Network accessline 21
- "Use curl to verify API endpoints, not a browser" - Network accessline 43
### IMPORTANT - The web server is running at http://127.0.0.1:3141 - Network accessline 44
- The web server is running at http://127.0.0.1:3141 - Network accessline 71
- Verify CSS is valid (no syntax errors) - Verify no obvious broken HTML - Use curl to check server still responds: `curl -s http://127.0.0.1:3141/api/health` - Network accessline 72
- Verify no obvious broken HTML - Use curl to check server still responds: `curl -s http://127.0.0.1:3141/api/health` - If all OK → `validation.passed` - Network accessline 73
- Use curl to check server still responds: `curl -s http://127.0.0.1:3141/api/health`
ralph-web-ui.yml
- Network accessline 102
- Run full verification: 1. TypeScript compiles: `npx tsc --noEmit` 2. Server starts: start dev server, curl /api/health - Network accessline 103
1. TypeScript compiles: `npx tsc --noEmit` 2. Server starts: start dev server, curl /api/health 3. API endpoints respond: /api/sessions, /api/files, /api/tasks - Network accessline 104
2. Server starts: start dev server, curl /api/health
scripts/bench.sh
- Executable scriptline 1
#!/usr/bin/env bash - Network accessline 2
# Quick local benchmarks for rho-web API routes using autocannon. # Usage: bash scripts/bench.sh [base_url] # base_url defaults to http://localhost:3141 - Network accessline 3
# Usage: bash scripts/bench.sh [base_url] # base_url defaults to http://localhost:3141 # - Network accessline 4
# base_url defaults to http://localhost:3141 - Network accessline 10
BASE="${1:-http://localhost:3141}" - Network accessline 14
echo "═══════════════════════════════════════════" echo " rho-web benchmark" echo " target: $BASE" - Network accessline 15
echo " rho-web benchmark" echo " target: $BASE" echo " duration: ${DURATION}s connections: $CONNECTIONS" - Network accessline 16
echo " target: $BASE" - Network accessline 22
if ! curl -sf "$BASE/api/tasks" > /dev/null 2>&1; then - Network accessline 23
echo "✗ Server not reachable at $BASE" - Network accessline 54
echo "── $LABEL ──" RESULT=$(npx -y autocannon -c "$CONNECTIONS" -d "$DURATION" -j "$BASE$ROUTE" 2>/dev/null) - Network accessline 55
RESULT=$(npx -y autocannon -c "$CONNECTIONS" -d "$DURATION" -j "$BASE$ROUTE" 2>/dev/null)
scripts/check-asset-size.sh
- Executable scriptline 1
#!/usr/bin/env bash
scripts/check-line-limit.sh
- Executable scriptline 1
#!/usr/bin/env bash
scripts/perf-summary.sh
- Executable scriptline 1
#!/usr/bin/env bash
scripts/pre-commit.sh
- Executable scriptline 1
#!/usr/bin/env bash
scripts/telegram-smoke.ts
skills/eval/SKILL.md
skills/pdd-build/SKILL.md
- Network accessline 195
Project dir: .agents/planning/2026-02-10-review-extension Validation strategy: After each step that changes the UI, use the playwriter skill to open http://localhost:<port> and verify: - Network accessline 196
Validation strategy: After each step that changes the UI, use the playwriter skill to open http://localhost:<port> and verify: - The page loads without console errors - Network accessline 197
skill to open http://localhost:<port> and verify:
skills/rho-cloud-email/SKILL.md
- Access to secretsline 15
[Credential-related source omitted] - Access to secretsline 20
[Credential-related source omitted] - Network accessline 21
AGENT_ID=$(jq -r .agent_id ~/.config/rho-cloud/credentials.json) AGENT_EMAIL=$(jq -r .email ~/.config/rho-cloud/credentials.json) API="https://api.rhobot.dev/v1" - Network accessline 22
[Credential-related source omitted] - Network accessline 23
API="https://api.rhobot.dev/v1" - Access to secretsline 24
[Credential-related source omitted] - Network accessline 42
curl -s -H "$AUTH" "$API/agents/$AGENT_ID/senders" | jq . - Network accessline 61
curl -s -X POST -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 75
curl -s -X DELETE -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 83
curl -s -X PUT -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 91
curl -s -H "$AUTH" "$API/agents/$AGENT_ID/inbox?status=unread&limit=20" | jq . - Network accessline 127
curl -s -H "$AUTH" \ - Network accessline 140
# Find held messages from the newly approved sender HELD=$(curl -s -H "$AUTH" \ - Network accessline 141
HELD=$(curl -s -H "$AUTH" \ - Network accessline 145
# Promote each to unread for MSG_ID in $HELD; do curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 146
for MSG_ID in $HELD; do curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ -d '{"status": "unread"}' \ - Network accessline 147
curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 158
curl -s -H "$AUTH" "$API/agents/$AGENT_ID/inbox/{message_id}" | jq . - Network accessline 167
curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 177
curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 187
curl -s -X PATCH -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 195
curl -s -X POST -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 207
curl -s -X POST -H "$AUTH" -H "Content-Type: application/json" \ - Network accessline 242
curl -s -H "$AUTH" "$API/agents/$AGENT_ID/outbox?limit=20" | jq . - Network accessline 268
curl -s -H "$AUTH" "$API/agents/$AGENT_ID/outbox/{outbox_id}" | jq . - Network accessline 319
curl -s https://api.rhobot.dev/v1/health | jq .
skills/rho-cloud-onboard/SKILL.md
- Network accessline 18
- **Landing page**: `https://rhobot.dev/email` - Network accessline 19
- **Skill reference**: `https://rhobot.dev/skill.md` - Network accessline 20
- **API endpoint**: `https://api.rhobot.dev` (all API calls go here) - Access to secretsline 49
[Credential-related source omitted] - Network accessline 58
curl -s -X POST https://api.rhobot.dev/v1/register \ - Network accessline 70
| 409 | Handle already taken | Tell user `{handle}@rhobot.dev` is taken. Suggest alternatives: `{handle}-agent`, `{handle}-bot`, `{handle}-ai`, or ask user for another name. Return to Step 1. | | 500 | Server error | Report the error. Sugge - Network accessline 72
| Network error | Connection failed | Check internet. Suggest `curl -s https://api.rhobot.dev/v1/health | jq .` to verify the API is up. | - Access to secretsline 85
[Credential-related source omitted] - Network accessline 103
# Health check curl -s https://api.rhobot.dev/v1/health | jq . - Network accessline 104
curl -s https://api.rhobot.dev/v1/health | jq . - Network accessline 106
[Credential-related source omitted] - Network accessline 107
[Credential-related source omitted] - Access to secretsline 107
[Credential-related source omitted] - Network accessline 108
https://api.rhobot.dev/v1/agents/status | jq .
skills/rho-cloud-onboard/scripts/send-test-email.py
- Executable scriptline 1
#!/usr/bin/env python3 - Network accessline 10
Generate an app password at: https://myaccount.google.com/apppasswords - Access to secretsline 27
[Credential-related source omitted] - Access to secretsline 28
[Credential-related source omitted] - Network accessline 30
if not gmail_user or not gmail_pass: print("ERROR: Set GMAIL_USER and GMAIL_APP_PASSWORD environment variables") print("Generate an app password at: https://myaccount.google.com/apppasswords") - Network accessline 31
print("ERROR: Set GMAIL_USER and GMAIL_APP_PASSWORD environment variables") print("Generate an app password at: https://myaccount.google.com/apppasswords") sys.exit(1) - Network accessline 32
print("Generate an app password at: https://myaccount.google.com/apppasswords")
skills/small-improvement/SKILL.md
skills/vault-clean/SKILL.md
templates/init.toml
- Network accessline 1
# Rho Configuration # Edit this file, then run `rho sync` to apply changes. # Docs: https://github.com/mikeyobrien/rho - Network accessline 3
# Docs: https://github.com/mikeyobrien/rho - Network accessline 70
# stt_provider = "elevenlabs" # "elevenlabs" | "openai" # stt_api_key_env = "ELEVENLABS_API_KEY" # Env var holding API key # stt_endpoint = "" # Custom endpoint (e.g., "http://localhost:8787" for local Whisper - Network accessline 71
[Credential-related source omitted] - Access to secretsline 71
[Credential-related source omitted] - Network accessline 72
# stt_endpoint = "" # Custom endpoint (e.g., "http://localhost:8787" for local Whisper) - Access to secretsline 79
[Credential-related source omitted]
tests/e2e/Dockerfile
tests/e2e/Dockerfile.npm
tests/e2e/Dockerfile.regressions
- Dangerous shell operationline 17
&& rm -rf /var/lib/apt/lists/*
tests/e2e/Dockerfile.start-bug
- Dangerous shell operationline 11
&& rm -rf /var/lib/apt/lists/*
tests/e2e/run.sh
tests/e2e/test-e2e.sh
tests/e2e/test-npm-install.sh
tests/e2e/test-regressions.sh
- Executable scriptline 1
#!/usr/bin/env bash
tests/e2e/test-start-bug.sh
- Executable scriptline 1
#!/usr/bin/env bash
tests/generate-synthetic-brain.ts
- Executable scriptline 1
Executable file
tests/playwriter/web-multi-session-gates.ts
- Executable scriptline 1
Executable file - Network accessline 150
while (Date.now() - start < timeoutMs) { try { const response = await fetch(url, { method: "GET" }); - Network accessline 151
try { const response = await fetch(url, { method: "GET" }); if (response.ok) { - Network accessline 152
const response = await fetch(url, { method: "GET" }); - Network accessline 494
const createSession = async () => { const response = await fetch("/api/sessions/new", { - Network accessline 495
const response = await fetch("/api/sessions/new", { - Network accessline 687
}; const createSession = async () => { const response = await fetch("/api/sessions/new", { - Network accessline 688
const createSession = async () => { const response = await fetch("/api/sessions/new", { method: "POST", - Network accessline 689
const response = await fetch("/api/sessions/new", { - Network accessline 820
}; const createSession = async () => { const response = await fetch("/api/sessions/new", { - Network accessline 821
const createSession = async () => { const response = await fetch("/api/sessions/new", { method: "POST", - Network accessline 822
const response = await fetch("/api/sessions/new", { - Network accessline 1014
const server = serve({ fetch: app.fetch, port, hostname: "127.0.0.1" }); injectWebSocket(server); const baseUrl = `http://127.0.0.1:${port}`; - Network accessline 1016
const baseUrl = `http://127.0.0.1:${port}`;
tests/test-android-release-workflow.ts
- Executable scriptline 1
Executable file
tests/test-android-store-readiness.ts
- Executable scriptline 1
Executable file
tests/test-auto-memory-delta.ts
- Executable scriptline 1
Executable file
tests/test-auto-memory-model.ts
- Executable scriptline 1
Executable file
tests/test-bootstrap-command.ts
- Executable scriptline 1
Executable file
tests/test-bootstrap-slash.ts
- Executable scriptline 1
Executable file
tests/test-brain-bootstrap-schema.ts
- Executable scriptline 1
Executable file
tests/test-brain-bootstrap-state.ts
- Executable scriptline 1
Executable file
tests/test-brain-migration.ts
- Executable scriptline 1
Executable file
tests/test-brain-prompt.ts
- Executable scriptline 1
Executable file
tests/test-brain-store.ts
- Executable scriptline 1
Executable file
tests/test-brain-tool.ts
- Executable scriptline 1
Executable file
tests/test-cli.ts
- Executable scriptline 1
Executable file
tests/test-config.ts
- Executable scriptline 1
Executable file
tests/test-daemon.ts
- Executable scriptline 1
Executable file
tests/test-doctor.ts
- Executable scriptline 1
Executable file
tests/test-file-lock.ts
- Executable scriptline 1
Executable file
tests/test-init.ts
- Executable scriptline 1
Executable file
tests/test-iphone-docs.sh
- Executable scriptline 1
#!/bin/bash
tests/test-lease-lock.ts
- Executable scriptline 1
Executable file
tests/test-memory-consolidate.sh
tests/test-memory-settings.ts
- Executable scriptline 1
Executable file
tests/test-mobile-parity-smoke.ts
- Executable scriptline 1
Executable file - Network accessline 110
for (const [route, init] of protectedRoutes) { const res = await app.fetch(new Request(`http://localhost${route}`, init)); - Network accessline 111
const res = await app.fetch(new Request(`http://localhost${route}`, init)); - Network accessline 120
const healthRes = await app.fetch(new Request("http://localhost/api/health")); - Network accessline 123
const authStatusRes = await app.fetch( - Network accessline 124
new Request("http://localhost/api/auth/status"), - Network accessline 137
const missingAuthRes = await app.fetch( - Network accessline 138
new Request("http://localhost/api/auth/exchange", { method: "POST" }), - Network accessline 146
const badTokenRes = await app.fetch( - Network accessline 147
new Request("http://localhost/api/auth/exchange", { - Network accessline 154
const authRes = await app.fetch( - Network accessline 155
new Request("http://localhost/api/auth/exchange", { - Access to secretsline 157
[Credential-related source omitted] - Network accessline 181
const sessionsRes = await app.fetch( - Network accessline 182
new Request("http://localhost/api/sessions", { headers: authHeaders }), - Network accessline 186
const newSessionRes = await app.fetch( - Network accessline 187
new Request("http://localhost/api/sessions/new", { - Network accessline 203
const forkRes = await app.fetch( - Network accessline 204
new Request(`http://localhost/api/sessions/${body.sessionId}/fork`, { - Network accessline 224
const wsNoAuthRes = await app.fetch(new Request("http://localhost/ws")); - Network accessline 227
const wsAuthRes = await app.fetch( - Network accessline 228
new Request("http://localhost/ws", { - Network accessline 242
const configRes = await app.fetch( - Network accessline 243
new Request("http://localhost/api/config", { headers: authHeaders }), - Network accessline 253
const providerUsageRes = await app.fetch( - Network accessline 254
new Request("http://localhost/api/provider-usage", { - Network accessline 264
const tasksRes = await app.fetch( - Network accessline 265
new Request("http://localhost/api/tasks", { headers: authHeaders }), - Network accessline 269
const memoryRes = await app.fetch( - Network accessline 270
new Request("http://localhost/api/memory", { headers: authHeaders }), - Network accessline 279
const reviewSessionsRes = await app.fetch( - Network accessline 280
new Request("http://localhost/api/review/sessions", { - Network accessline 290
const reviewSubmissionsRes = await app.fetch( - Network accessline 291
new Request("http://localhost/api/review/submissions", { - Network accessline 302
const createReviewRes = await app.fetch( - Network accessline 303
new Request("http://localhost/api/review/sessions", { - Network accessline 327
const statusActiveRes = await app.fetch( - Network accessline 328
new Request("http://localhost/api/auth/status", { headers: authHeaders }), - Network accessline 340
const logoutRes = await app.fetch( - Network accessline 341
new Request("http://localhost/api/auth/logout", { - Network accessline 349
const postLogoutRes = await app.fetch( - Network accessline 350
new Request("http://localhost/api/sessions", { headers: authHeaders }), - Network accessline 356
activeSessions.set(expiredId, { expiresAt: Date.now() - 1000 }); const expiredHeaders = { Cookie: `${SESSION_COOKIE_NAME}=${expiredId}` }; const expiredRes = await app.fetch( - Network accessline 357
const expiredHeaders = { Cookie: `${SESSION_COOKIE_NAME}=${expiredId}` }; const expiredRes = await app.fetch( new Request("http://localhost/api/sessions", { headers: expiredHeaders }), - Network accessline 358
const expiredRes = await app.fetch( - Network accessline 359
new Request("http://localhost/api/sessions", { headers: expiredHeaders }),
tests/test-nix-android-dev-shell.ts
- Executable scriptline 1
Executable file
tests/test-one-skill-system.ts
- Executable scriptline 1
Executable file
tests/test-registry.ts
- Executable scriptline 1
Executable file
tests/test-regressions.ts
- Executable scriptline 1
Executable file
tests/test-review-deferred-flow.ts
- Executable scriptline 1
Executable file - Network accessline 51
const port = randomPort(); const base = `http://127.0.0.1:${port}`; const server = serve({ fetch: app.fetch, port, hostname: "127.0.0.1" }); - Network accessline 52
const base = `http://127.0.0.1:${port}`; const server = serve({ fetch: app.fetch, port, hostname: "127.0.0.1" }); injectWebSocket(server); - Network accessline 56
try { const createRes = await fetch(`${base}/api/review/sessions`, { - Network accessline 57
const createRes = await fetch(`${base}/api/review/sessions`, { - Network accessline 112
const inboxRes = await fetch(`${base}/api/review/submissions?status=inbox`); - Network accessline 124
const detailRes = await fetch(`${base}/api/review/submissions/${created.id}`); - Network accessline 137
const claimRes = await fetch( - Network accessline 153
const submittedAfterClaimRes = await fetch( - Network accessline 169
const claimedListRes = await fetch( - Network accessline 179
const openListRes = await fetch(`${base}/api/review/submissions?status=open`); - Network accessline 187
const resolveRes = await fetch( - Network accessline 203
const resolvedListRes = await fetch( - Network accessline 213
const claimedAfterResolveRes = await fetch( - Network accessline 229
const inboxAfterResolveRes = await fetch(
tests/test-review-panel.ts
- Executable scriptline 1
Executable file
tests/test-review-store.ts
- Executable scriptline 1
Executable file
tests/test-rho-login.sh
tests/test-rpc-slash-notify-race.ts
- Executable scriptline 1
Executable file
tests/test-slash-contract-parity.ts
- Executable scriptline 1
Executable file
tests/test-sync.ts
- Executable scriptline 1
Executable file
tests/test-tasks.ts
- Executable scriptline 1
Executable file
tests/test-telegram-stt.ts
tests/test-telegram-worker-lock.ts
- Executable scriptline 1
Executable file
tests/test-telegram-worker-runtime.ts
- Executable scriptline 1
Executable file - Access to secretsline 988
[Credential-related source omitted] - Access to secretsline 1025
[Credential-related source omitted] - Access to secretsline 1088
[Credential-related source omitted] - Access to secretsline 1091
[Credential-related source omitted] - Access to secretsline 1123
[Credential-related source omitted] - Access to secretsline 1138
[Credential-related source omitted] - Access to secretsline 1140
[Credential-related source omitted] - Access to secretsline 1145
[Credential-related source omitted] - Access to secretsline 1194
[Credential-related source omitted] - Access to secretsline 1197
[Credential-related source omitted] - Access to secretsline 1228
[Credential-related source omitted] - Access to secretsline 1233
[Credential-related source omitted] - Access to secretsline 1235
[Credential-related source omitted] - Access to secretsline 1287
[Credential-related source omitted] - Access to secretsline 1289
[Credential-related source omitted] - Access to secretsline 1322
[Credential-related source omitted] - Access to secretsline 1324
[Credential-related source omitted] - Access to secretsline 1678
[Credential-related source omitted] - Access to secretsline 1680
[Credential-related source omitted] - Access to secretsline 1707
[Credential-related source omitted] - Access to secretsline 1708
[Credential-related source omitted]
tests/test-telegram.ts
- Executable scriptline 1
Executable file - Network accessline 222
const api = new Api("test-token", { apiRoot: "https://example.test", fetch: globalThis.fetch as any, - Network accessline 223
apiRoot: "https://example.test", fetch: globalThis.fetch as any, }); - Network accessline 238
const bytes = await downloadFile("test-token", "voice/path.oga", "https://example.test/"); - Network accessline 241
const updatesCall = calls.find((call) => call.url.endsWith("/getUpdates")); assert(updatesCall?.url === "https://example.test/bottest-token/getUpdates", "grammy getUpdates targets bot API endpoint"); - Network accessline 242
assert(updatesCall?.url === "https://example.test/bottest-token/getUpdates", "grammy getUpdates targets bot API endpoint"); - Network accessline 244
const sendMessageCall = calls.find((call) => call.url.endsWith("/sendMessage")); assert(sendMessageCall?.url === "https://example.test/bottest-token/sendMessage", "grammy sendMessage targets bot API endpoint"); - Network accessline 245
assert(sendMessageCall?.url === "https://example.test/bottest-token/sendMessage", "grammy sendMessage targets bot API endpoint"); - Network accessline 1176
"```", "", "Link: [rho](https://rhobot.dev)", - Network accessline 1177
"", "Link: [rho](https://rhobot.dev)", ].join("\n"); - Network accessline 1178
"Link: [rho](https://rhobot.dev)", - Network accessline 1185
assert(rendered.some((c) => c.text.includes("<code>code</code>")), "inline code renders as code html"); assert(rendered.some((c) => c.text.includes("<pre><code>")), "fenced code renders as pre/code html"); assert(rendered.some((c) = - Network accessline 1186
assert(rendered.some((c) => c.text.includes("<pre><code>")), "fenced code renders as pre/code html"); assert(rendered.some((c) => c.text.includes('<a href="https://rhobot.dev">rho</a>')), "markdown links render as html links"); asse - Network accessline 1187
assert(rendered.some((c) => c.text.includes('<a href="https://rhobot.dev">rho</a>')), "markdown links render as html links");
tests/test-templates.ts
- Executable scriptline 1
Executable file
tests/test-terminal-manager.ts
- Executable scriptline 1
Executable file
tests/test-termux-install.ts
- Executable scriptline 1
Executable file
tests/test-tmux-config.sh
- Executable scriptline 1
#!/bin/bash
tests/test-vault-search.ts
- Executable scriptline 1
Executable file
tests/test-vault.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-init-no-marked.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-reconnect.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-restore-persistence.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-session-ordering.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-session-state.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-slash.ts
- Executable scriptline 1
Executable file
tests/test-web-chat-ws-routing.ts
- Executable scriptline 1
Executable file
tests/test-web-config-provider-usage.ts
tests/test-web-line-limit.ts
- Executable scriptline 1
Executable file
tests/test-web-mobile-auth-gate.ts
- Executable scriptline 1
Executable file - Network accessline 64
const res = await app.fetch(new Request("http://localhost/api/health")); - Network accessline 68
const res2 = await app.fetch(new Request("http://localhost/api/config")); - Network accessline 71
const resUsage = await app.fetch( - Network accessline 72
new Request("http://localhost/api/provider-usage"), - Network accessline 77
const res3 = await app.fetch(new Request("http://localhost/ws")); - Network accessline 88
const response = await app.fetch( - Network accessline 89
new Request("http://localhost/api/auth/exchange", { - Access to secretsline 91
[Credential-related source omitted] - Network accessline 105
const res = await app.fetch(new Request("http://localhost/api/health")); - Network accessline 108
const resStatus = await app.fetch( - Network accessline 109
new Request("http://localhost/api/auth/status"), - Network accessline 114
const resNoAuth = await app.fetch( - Network accessline 115
new Request("http://localhost/api/config"), - Network accessline 119
const resUsageNoAuth = await app.fetch( - Network accessline 120
new Request("http://localhost/api/provider-usage"), - Network accessline 129
const resInvalid = await app.fetch( - Network accessline 130
new Request("http://localhost/api/config", { - Network accessline 137
const resValid = await app.fetch( - Network accessline 138
new Request("http://localhost/api/config", { - Network accessline 150
const resUsageValid = await app.fetch( - Network accessline 151
new Request("http://localhost/api/provider-usage", { - Network accessline 165
const resWsBlocked = await app.fetch(new Request("http://localhost/ws")); - Network accessline 168
const resTerminalWsBlocked = await app.fetch( - Network accessline 169
new Request("http://localhost/terminal/ws"), - Network accessline 178
const resWsAllowed = await app.fetch( - Network accessline 179
new Request("http://localhost/ws", { - Network accessline 185
const resTerminalWsAllowed = await app.fetch( - Network accessline 186
new Request("http://localhost/terminal/ws", {
tests/test-web-mobile-auth.ts
- Executable scriptline 1
Executable file - Network accessline 59
console.log("-- /api/auth/exchange fails without token --"); { const response = await app.fetch( - Network accessline 60
{ const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { method: "POST" }) - Network accessline 61
const response = await app.fetch( - Network accessline 62
new Request("http://localhost/api/auth/exchange", { method: "POST" }) - Network accessline 67
console.log("\n-- /api/auth CORS preflight for Capacitor shell origin --"); { const preflight = await app.fetch( - Network accessline 68
{ const preflight = await app.fetch( new Request("http://localhost/api/auth/exchange", { - Network accessline 69
const preflight = await app.fetch( - Network accessline 70
new Request("http://localhost/api/auth/exchange", { - Network accessline 71
method: "OPTIONS", headers: { Origin: "http://localhost", - Network accessline 72
headers: { Origin: "http://localhost", "Access-Control-Request-Method": "POST", - Network accessline 73
Origin: "http://localhost", - Network accessline 80
assertEq( preflight.headers.get("Access-Control-Allow-Origin"), "http://localhost", - Network accessline 81
preflight.headers.get("Access-Control-Allow-Origin"), "http://localhost", "Preflight allow-origin echoes mobile shell origin" - Network accessline 82
"http://localhost", - Network accessline 92
console.log("\n-- /api/auth/exchange fails with invalid token --"); { const response = await app.fetch( - Network accessline 93
{ const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { - Network accessline 94
const response = await app.fetch( - Network accessline 95
new Request("http://localhost/api/auth/exchange", { - Network accessline 106
console.log("\n-- /api/auth/exchange succeeds with valid token --"); { const response = await app.fetch( - Network accessline 107
{ const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { - Network accessline 108
const response = await app.fetch( - Network accessline 109
new Request("http://localhost/api/auth/exchange", { - Network accessline 111
[Credential-related source omitted] - Network accessline 112
[Credential-related source omitted] - Access to secretsline 112
[Credential-related source omitted] - Network accessline 113
"Origin": "http://localhost" - Network accessline 118
assertEq( response.headers.get("Access-Control-Allow-Origin"), "http://localhost", - Network accessline 119
response.headers.get("Access-Control-Allow-Origin"), "http://localhost", "Exchange response includes allow-origin for shell" - Network accessline 120
"http://localhost", - Network accessline 142
console.log("\n-- /?auth_bootstrap sets first-party cookie and redirects --"); { const response = await app.fetch( - Network accessline 143
{ const response = await app.fetch( new Request(`http://localhost/?auth_bootstrap=${bootstrapToken}`) - Network accessline 144
const response = await app.fetch( - Network accessline 145
new Request(`http://localhost/?auth_bootstrap=${bootstrapToken}`) - Network accessline 153
console.log("\n-- /api/auth/exchange succeeds with second valid token --"); { const response = await app.fetch( - Network accessline 154
{ const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { - Network accessline 155
const response = await app.fetch( - Network accessline 156
new Request("http://localhost/api/auth/exchange", { - Network accessline 165
{ const sessionId = cookieStr.split(";")[0].split("=")[1]; const response = await app.fetch( - Network accessline 166
const sessionId = cookieStr.split(";")[0].split("=")[1]; const response = await app.fetch( new Request("http://localhost/api/auth/status", { - Network accessline 167
const response = await app.fetch( - Network accessline 168
new Request("http://localhost/api/auth/status", { - Network accessline 178
console.log("\n-- /api/auth/status checks invalid session --"); { const response = await app.fetch( - Network accessline 179
{ const response = await app.fetch( new Request("http://localhost/api/auth/status", { - Network accessline 180
const response = await app.fetch( - Network accessline 181
new Request("http://localhost/api/auth/status", { - Network accessline 193
{ const sessionId = cookieStr.split(";")[0].split("=")[1]; const response = await app.fetch( - Network accessline 194
const sessionId = cookieStr.split(";")[0].split("=")[1]; const response = await app.fetch( new Request("http://localhost/api/auth/logout", { - Network accessline 195
const response = await app.fetch( - Network accessline 196
new Request("http://localhost/api/auth/logout", { - Network accessline 209
const statusResponse = await app.fetch( - Network accessline 210
new Request("http://localhost/api/auth/status", { - Network accessline 220
{ writeConfig(true, 1); // 1 second TTL const response = await app.fetch( - Network accessline 221
writeConfig(true, 1); // 1 second TTL const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { - Network accessline 222
const response = await app.fetch( - Network accessline 223
new Request("http://localhost/api/auth/exchange", { - Access to secretsline 225
[Credential-related source omitted] - Network accessline 234
const statusResponse = await app.fetch( - Network accessline 235
new Request("http://localhost/api/auth/status", { - Network accessline 245
{ writeConfig(false); const response = await app.fetch( - Network accessline 246
writeConfig(false); const response = await app.fetch( new Request("http://localhost/api/auth/exchange", { method: "POST" }) - Network accessline 247
const response = await app.fetch( - Network accessline 248
new Request("http://localhost/api/auth/exchange", { method: "POST" }) - Network accessline 252
const statusResponse = await app.fetch( - Network accessline 253
new Request("http://localhost/api/auth/status")
tests/test-web-mobile-live-mode-bridge.ts
- Executable scriptline 1
Executable file - Network accessline 152
location: { search: options.mobileShell === false ? "" : "?mobile_shell=1", origin: "https://rho.example", - Network accessline 153
search: options.mobileShell === false ? "" : "?mobile_shell=1", origin: "https://rho.example", }, - Network accessline 154
origin: "https://rho.example",
tests/test-web-provider-usage.ts
- Executable scriptline 1
Executable file - Network accessline 63
? input.href : input.url; if (url === "https://chatgpt.com/backend-api/wham/usage") { - Network accessline 64
: input.url; if (url === "https://chatgpt.com/backend-api/wham/usage") { return new Response(JSON.stringify(mock.body ?? {}), { - Network accessline 65
if (url === "https://chatgpt.com/backend-api/wham/usage") { - Network accessline 95
const res = await app.fetch( - Network accessline 96
new Request("http://localhost/api/provider-usage"), - Network accessline 119
fs.rmSync(authPath, { force: true }); installFetchMock({ body: {} }); const res = await app.fetch( - Network accessline 120
installFetchMock({ body: {} }); const res = await app.fetch( new Request("http://localhost/api/provider-usage"), - Network accessline 121
const res = await app.fetch( - Network accessline 122
new Request("http://localhost/api/provider-usage"), - Network accessline 142
); installFetchMock({ status: 403, body: { error: "denied" } }); const res = await app.fetch( - Network accessline 143
installFetchMock({ status: 403, body: { error: "denied" } }); const res = await app.fetch( new Request("http://localhost/api/provider-usage"), - Network accessline 144
const res = await app.fetch( - Network accessline 145
new Request("http://localhost/api/provider-usage"),
tests/test-web-rpc-health-watchdog.ts
- Executable scriptline 1
Executable file
tests/test-web-rpc-live-mode-lease.ts
- Executable scriptline 1
Executable file - Network accessline 141
try { const unauthLease = await app.fetch( - Network accessline 142
const unauthLease = await app.fetch( - Network accessline 143
new Request("http://localhost/api/mobile/live-mode/lease", { - Network accessline 151
const exchange = await app.fetch( - Network accessline 152
new Request("http://localhost/api/auth/exchange", { - Network accessline 161
const createLease = await app.fetch( - Network accessline 162
new Request("http://localhost/api/mobile/live-mode/lease", { - Network accessline 177
const clearLease = await app.fetch( - Network accessline 178
new Request("http://localhost/api/mobile/live-mode/lease/clear", {
tests/test-web-rpc-orphan-config.ts
- Executable scriptline 1
Executable file
tests/test-web-rpc-orphan-smoke.ts
- Executable scriptline 1
Executable file
tests/test-web-rpc-reconnect-smoke.ts
- Executable scriptline 1
Executable file
tests/test-web-rpc-reliability.ts
- Executable scriptline 1
Executable file
tests/test-web-rpc-sessions-api.ts
- Executable scriptline 1
Executable file - Network accessline 52
try { const response = await app.fetch( - Network accessline 53
const response = await app.fetch( - Network accessline 54
new Request("http://localhost/api/rpc/sessions"), - Network accessline 78
try { const response = await app.fetch( - Network accessline 79
const response = await app.fetch( - Network accessline 80
new Request("http://localhost/api/rpc/sessions"),
tests/test-web-session-reader-api.ts
- Executable scriptline 1
Executable file
tests/test-web-session-usage.ts
- Executable scriptline 1
Executable file
tests/test-web-terminal-reconnect.ts
- Executable scriptline 1
Executable file
tests/test-web-terminal-routes.ts
- Executable scriptline 1
Executable file - Network accessline 34
console.log("-- /terminal is not exposed as a standalone route --"); { const response = await app.fetch(new Request("http://localhost/terminal")); - Network accessline 35
{ const response = await app.fetch(new Request("http://localhost/terminal")); assertEq(response.status, 404, "GET /terminal returns 404"); - Network accessline 36
const response = await app.fetch(new Request("http://localhost/terminal")); - Network accessline 58
try { const response = await app.fetch( - Network accessline 59
const response = await app.fetch( - Network accessline 60
new Request("http://localhost/api/terminal/sessions"), - Network accessline 74
console.log("\n-- terminal vendor assets are served locally --"); { const jsResponse = await app.fetch( - Network accessline 75
{ const jsResponse = await app.fetch( new Request("http://localhost/vendor/ghostty-web.js"), - Network accessline 76
const jsResponse = await app.fetch( - Network accessline 77
new Request("http://localhost/vendor/ghostty-web.js"), - Network accessline 85
const wasmResponse = await app.fetch( - Network accessline 86
new Request("http://localhost/vendor/ghostty-vt.wasm"), - Network accessline 104
try { const response = await app.fetch( - Network accessline 105
const response = await app.fetch( - Network accessline 106
new Request("http://localhost/api/terminal/sessions"),
tests/test-web-terminal-touch.ts
- Executable scriptline 1
Executable file
tests/test-web-vendor-assets.ts
- Executable scriptline 1
Executable file - Network accessline 47
for (const [route, contentTypeNeedle] of cases) { const response = await app.fetch(new Request(`http://localhost${route}`)); - Network accessline 48
const response = await app.fetch(new Request(`http://localhost${route}`)); - Network accessline 81
assert( !html.includes("https://unpkg.com/htmx.org"), - Network accessline 82
!html.includes("https://unpkg.com/htmx.org"), - Network accessline 84
); assert( !html.includes("https://cdn.jsdelivr.net/npm/marked/marked.min.js"), - Network accessline 85
assert( !html.includes("https://cdn.jsdelivr.net/npm/marked/marked.min.js"), "index.html no longer pulls marked from jsDelivr", - Network accessline 86
!html.includes("https://cdn.jsdelivr.net/npm/marked/marked.min.js"), - Network accessline 89
assert( !html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js", - Network accessline 90
!html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js", ), - Network accessline 91
"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js", - Network accessline 95
assert( !html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css", - Network accessline 96
!html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css", ), - Network accessline 97
"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/github-dark.min.css", - Network accessline 100
); assert( !html.includes("https://unpkg.com/alpinejs@3.13.5/dist/cdn.min.js"), - Network accessline 101
assert( !html.includes("https://unpkg.com/alpinejs@3.13.5/dist/cdn.min.js"), "index.html no longer pulls Alpine from unpkg", - Network accessline 102
!html.includes("https://unpkg.com/alpinejs@3.13.5/dist/cdn.min.js"), - Network accessline 148
assert( !html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/", - Network accessline 149
!html.includes( "https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/", ), - Network accessline 150
"https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/", - Network accessline 154
assert( !html.includes( "https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js", - Network accessline 155
!html.includes( "https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js", ), - Network accessline 156
"https://cdn.jsdelivr.net/npm/alpinejs@3.x.x/dist/cdn.min.js",
web/config.ts
- Executable scriptline 1
Executable file
web/dev.ts
- Executable scriptline 1
Executable file - Network accessline 7
const server = serve({ fetch: app.fetch, port, hostname: bindHost }); injectWebSocket(server); console.log(`Rho web server listening on http://localhost:${port}`); - Network accessline 9
console.log(`Rho web server listening on http://localhost:${port}`);
web/file-watcher.ts
- Executable scriptline 1
Executable file
web/git-context-store.ts
- Executable scriptline 1
Executable file
web/public/favicon.svg
- Network accessline 1
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 512 512">
web/public/index.html
- Network accessline 13
<link rel="apple-touch-icon" href="/favicon.svg" /> <title>Rho Web UI</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> - Network accessline 14
<title>Rho Web UI</title> <link rel="preconnect" href="https://fonts.googleapis.com" /> <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> - Network accessline 15
<link rel="preconnect" href="https://fonts.googleapis.com" /> - Network accessline 16
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin /> - Network accessline 17
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet" - Network accessline 18
href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap" - Network accessline 21
<style> /* Iosevka — narrow monospace for mobile density */ @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/lat - Network accessline 22
/* Iosevka — narrow monospace for mobile density */ @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal. - Network accessline 23
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2'); } - Network accessline 24
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 500; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-500-normal.woff2) format('woff2'); } - Network accessline 25
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 700; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-700-normal.woff2) format('woff2'); }
web/public/js/app.js
- Executable scriptline 1
Executable file - Network accessline 200
try { const reviewRes = await fetch("/api/review/sessions"); - Network accessline 201
const reviewRes = await fetch("/api/review/sessions"); - Network accessline 210
try { const terminalRes = await fetch("/api/terminal/sessions"); - Network accessline 211
const terminalRes = await fetch("/api/terminal/sessions");
web/public/js/chat.js
- Executable scriptline 1
Executable file
web/public/js/chat/assistant-turns.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-dialog-and-focus.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-git-context-picker.js
- Executable scriptline 1
Executable file - Network accessline 54
: ""; try { const response = await fetch(`/api/git/status${query}`, { - Network accessline 55
try { const response = await fetch(`/api/git/status${query}`, { cache: "no-store", - Network accessline 56
const response = await fetch(`/api/git/status${query}`, { - Network accessline 139
this.gitProjectsError = ""; try { const response = await fetch("/api/git/projects", { cache: "no-store" }); - Network accessline 140
try { const response = await fetch("/api/git/projects", { cache: "no-store" }); if (!response.ok) { - Network accessline 141
const response = await fetch("/api/git/projects", { cache: "no-store" }); - Network accessline 196
this.gitProjectsError = ""; try { const response = await fetch("/api/git/context", { - Network accessline 197
try { const response = await fetch("/api/git/context", { method: "POST", - Network accessline 198
const response = await fetch("/api/git/context", {
web/public/js/chat/chat-input-and-rpc-send.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-model-and-extension-ui.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-reactive-props.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-rpc-event-routing.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-session-actions.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-session-ui.js
- Executable scriptline 1
Executable file - Network accessline 223
try { const resp = await fetch( - Network accessline 224
const resp = await fetch( - Network accessline 265
this.isLoadingMore = true; try { const resp = await fetch( - Network accessline 266
try { const resp = await fetch( `/api/sessions?limit=${this.sessionsPageSize}&offset=${this.sessionsLoaded}`, - Network accessline 267
const resp = await fetch(
web/public/js/chat/chat-slash-and-stats.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-streaming-parts.js
- Executable scriptline 1
Executable file
web/public/js/chat/chat-ws-rpc.js
- Executable scriptline 1
Executable file
web/public/js/chat/constants-and-primitives.js
- Executable scriptline 1
Executable file
web/public/js/chat/index.js
- Executable scriptline 1
Executable file
web/public/js/chat/mobile-live-mode-bridge.js
- Executable scriptline 1
Executable file
web/public/js/chat/model-thinking-and-toast.js
- Executable scriptline 1
Executable file
web/public/js/chat/rendering-and-usage.js
- Executable scriptline 1
Executable file - Network accessline 378
"*", ); else if (isMob) window.location.href = "http://localhost/?picker=1"; - Network accessline 379
); else if (isMob) window.location.href = "http://localhost/?picker=1"; else window.location.reload(); - Network accessline 380
else if (isMob) window.location.href = "http://localhost/?picker=1"; - Network accessline 385
async function fetchJson(url) { const response = await fetch(url); - Network accessline 386
const response = await fetch(url); - Network accessline 395
async function postJson(url, payload) { const response = await fetch(url, { - Network accessline 396
const response = await fetch(url, {
web/public/js/chat/rpc-health-watchdog.js
- Executable scriptline 1
Executable file
web/public/js/chat/rpc-reconnect-runtime.js
- Executable scriptline 1
Executable file
web/public/js/chat/rpc-session-routing.js
- Executable scriptline 1
Executable file
web/public/js/chat/session-list-ordering.js
- Executable scriptline 1
Executable file
web/public/js/chat/session-restore-persistence.js
- Executable scriptline 1
Executable file
web/public/js/chat/session-ui-state.js
- Executable scriptline 1
Executable file
web/public/js/chat/tool-semantics.js
- Executable scriptline 1
Executable file
web/public/js/config.js
- Executable scriptline 1
Executable file - Network accessline 32
async loadConfig() { try { const res = await fetch("/api/config"); - Network accessline 33
try { const res = await fetch("/api/config"); if (!res.ok) { - Network accessline 34
const res = await fetch("/api/config"); - Network accessline 53
this.kiroUsageError = ""; try { const res = await fetch("/api/provider-usage"); - Network accessline 54
try { const res = await fetch("/api/provider-usage"); if (!res.ok) { - Network accessline 55
const res = await fetch("/api/provider-usage"); - Network accessline 124
switchToProfilePicker() { window.location.href = "http://localhost/?picker=1"; - Network accessline 125
window.location.href = "http://localhost/?picker=1"; - Network accessline 235
this.saveStatus = ""; try { const res = await fetch("/api/config", { - Network accessline 236
try { const res = await fetch("/api/config", { method: "PUT", - Network accessline 237
const res = await fetch("/api/config", {
web/public/js/memory.js
- Executable scriptline 1
Executable file - Network accessline 220
const res = await fetch(`/api/memory?${params}`, { - Network accessline 267
try { const [statusRes, runsRes] = await Promise.all([ fetch("/api/auto-memory/status"), - Network accessline 268
const [statusRes, runsRes] = await Promise.all([ fetch("/api/auto-memory/status"), fetch("/api/auto-memory/runs?limit=8"), - Network accessline 269
fetch("/api/auto-memory/status"), - Network accessline 270
fetch("/api/auto-memory/runs?limit=8"), - Network accessline 363
body.category = this.editCategory.trim() || entry.category; } const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { - Network accessline 364
} const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { method: "PUT", - Network accessline 365
const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { - Network accessline 398
body.category = this.newEntryCategory.trim() || "General"; } const res = await fetch("/api/memory", { - Network accessline 399
} const res = await fetch("/api/memory", { method: "POST", - Network accessline 400
const res = await fetch("/api/memory", { - Network accessline 424
if (!confirm(`Delete brain entry?\n\n"${preview}..."`)) return; try { const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { - Network accessline 425
try { const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { method: "DELETE", - Network accessline 426
const res = await fetch(`/api/memory/${encodeURIComponent(entry.id)}`, { - Network accessline 442
this.error = ""; try { const res = await fetch("/api/tasks", { - Network accessline 443
try { const res = await fetch("/api/tasks", { method: "POST", - Network accessline 444
const res = await fetch("/api/tasks", { - Network accessline 467
this.error = ""; try { const res = await fetch(`/api/tasks/${task.id}`, { - Network accessline 468
try { const res = await fetch(`/api/tasks/${task.id}`, { method: "PATCH", - Network accessline 469
const res = await fetch(`/api/tasks/${task.id}`, { - Network accessline 486
this.error = ""; try { const res = await fetch(`/api/tasks/${task.id}`, { method: "DELETE" }); - Network accessline 487
try { const res = await fetch(`/api/tasks/${task.id}`, { method: "DELETE" }); if (!res.ok) { - Network accessline 488
const res = await fetch(`/api/tasks/${task.id}`, { method: "DELETE" });
web/public/js/pull-to-refresh.js
- Executable scriptline 1
Executable file
web/public/js/review-panel.js
- Executable scriptline 1
Executable file - Network accessline 132
: ""; const [statusRes, reviewsRes, submissionsRes] = await Promise.all([ fetch(`/api/git/status${sessionQuery}`), - Network accessline 133
const [statusRes, reviewsRes, submissionsRes] = await Promise.all([ fetch(`/api/git/status${sessionQuery}`), fetch("/api/review/sessions"), - Network accessline 134
fetch(`/api/git/status${sessionQuery}`), - Network accessline 135
fetch("/api/review/sessions"), - Network accessline 136
fetch("/api/review/submissions?status=submitted&limit=20"), - Network accessline 217
? `&sessionId=${encodeURIComponent(this.activeSessionId)}` : ""; const res = await fetch( - Network accessline 218
: ""; const res = await fetch( `/api/git/diff?file=${encodeURIComponent(path)}${sessionQuery}`, - Network accessline 219
const res = await fetch( - Network accessline 238
try { const res = await fetch("/api/review/from-git", { - Network accessline 239
const res = await fetch("/api/review/from-git", {
web/public/js/slash-contract.js
- Executable scriptline 1
Executable file
web/public/js/terminal-core.js
- Executable scriptline 1
Executable file
web/public/js/terminal-session-store.js
- Executable scriptline 1
Executable file
web/public/js/terminal-touch.js
- Executable scriptline 1
Executable file
web/public/js/vault.js
- Executable scriptline 1
Executable file - Network accessline 27
const params = new URLSearchParams(); if (this.typeFilter !== "all") params.set("type", this.typeFilter); const res = await fetch(`/api/vault?${params}`); - Network accessline 28
if (this.typeFilter !== "all") params.set("type", this.typeFilter); const res = await fetch(`/api/vault?${params}`); if (!res.ok) throw new Error(`HTTP ${res.status}`); - Network accessline 29
const res = await fetch(`/api/vault?${params}`); - Network accessline 64
const params = new URLSearchParams({ q }); if (this.typeFilter !== "all") params.set("type", this.typeFilter); const res = await fetch(`/api/vault/search?${params}`); - Network accessline 65
if (this.typeFilter !== "all") params.set("type", this.typeFilter); const res = await fetch(`/api/vault/search?${params}`); if (!res.ok) throw new Error(`HTTP ${res.status}`); - Network accessline 66
const res = await fetch(`/api/vault/search?${params}`); - Network accessline 77
this.error = ""; try { const res = await fetch(`/api/vault/${encodeURIComponent(slug)}`); - Network accessline 78
try { const res = await fetch(`/api/vault/${encodeURIComponent(slug)}`); if (!res.ok) throw new Error(`HTTP ${res.status}`); - Network accessline 79
const res = await fetch(`/api/vault/${encodeURIComponent(slug)}`);
web/public/review/index.html
- Network accessline 8
<link rel="apple-touch-icon" href="/favicon.svg"> <style> @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-n - Network accessline 9
<style> @font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2'); } @font-face { fon - Network accessline 10
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 400; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-400-normal.woff2) format('woff2'); } - Network accessline 11
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 500; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-500-normal.woff2) format('woff2'); } - Network accessline 12
@font-face { font-family: 'Iosevka Web'; font-style: normal; font-display: swap; font-weight: 700; src: url(https://cdn.jsdelivr.net/fontsource/fonts/iosevka@latest/latin-700-normal.woff2) format('woff2'); }
web/public/review/js/review.js
- Executable scriptline 1
Executable file - Network accessline 60
try { const cfgRes = await fetch(`${api}/config?${qsToken()}`); - Network accessline 61
const cfgRes = await fetch(`${api}/config?${qsToken()}`); - Network accessline 68
try { const warnRes = await fetch(`${api}/warnings?${qsToken()}`); - Network accessline 69
const warnRes = await fetch(`${api}/warnings?${qsToken()}`); - Network accessline 75
} catch {} try { const res = await fetch(`${api}/files?${qsToken()}`); - Network accessline 76
try { const res = await fetch(`${api}/files?${qsToken()}`); if (!res.ok) throw new Error(`Failed to fetch files: ${res.status}`); - Network accessline 77
const res = await fetch(`${api}/files?${qsToken()}`);
web/public/sw.js
web/review-store.ts
- Executable scriptline 1
Executable file
web/rpc-live-mode-lease.ts
- Executable scriptline 1
Executable file
web/rpc-manager.ts
- Executable scriptline 1
Executable file
web/rpc-reliability.ts
- Executable scriptline 1
Executable file
web/server-auto-memory-routes.ts
- Executable scriptline 1
Executable file
web/server-config-sessions-routes.ts
- Executable scriptline 1
Executable file
web/server-core.ts
- Executable scriptline 1
Executable file
web/server-git-context-routes.ts
- Executable scriptline 1
Executable file
web/server-git-routes.ts
- Executable scriptline 1
Executable file
web/server-mobile-auth-middleware.ts
- Executable scriptline 1
Executable file
web/server-mobile-auth-routes.ts
web/server-mobile-auth-state.ts
- Executable scriptline 1
Executable file
web/server-review-routes.ts
- Executable scriptline 1
Executable file
web/server-rpc-live-mode-routes.ts
- Executable scriptline 1
Executable file
web/server-rpc-ws-routes.ts
- Executable scriptline 1
Executable file
web/server-static-routes.ts
- Executable scriptline 1
Executable file
web/server-tasks-memory-routes.ts
- Executable scriptline 1
Executable file
web/server-terminal-routes.ts
- Executable scriptline 1
Executable file
web/server-ui-events.ts
- Executable scriptline 1
Executable file
web/server-vault-routes.ts
- Executable scriptline 1
Executable file
web/server-vendor-routes.ts
- Executable scriptline 1
Executable file
web/server.ts
- Executable scriptline 1
Executable file
web/session-reader-api.ts
- Executable scriptline 1
Executable file
web/session-reader-io.ts
- Executable scriptline 1
Executable file
web/session-reader-parse.ts
- Executable scriptline 1
Executable file
web/session-reader-types.ts
- Executable scriptline 1
Executable file
web/session-reader.ts
- Executable scriptline 1
Executable file
web/task-api.ts
- Executable scriptline 1
Executable file
web/terminal-manager.ts
- Executable scriptline 1
Executable file
How the signals fit together
Facts from a static read of the files at the pinned commit. They describe what the code does, not why.
Some files could not be read; the facts below still hold.
Declared and executed: 13 facts
- Contacts api.telegram.org, which SKILL.md, the README and the plugin manifest do not mentioncli/commands/telegram.ts:273High confidence
- Contacts t.me, which SKILL.md, the README and the plugin manifest do not mentioncli/commands/telegram.ts:597High confidence
- Contacts api.search.brave.com, which SKILL.md, the README and the plugin manifest do not mentionextensions/brave-search/index.ts:12High confidence
- Contacts chatgpt.com, which SKILL.md, the README and the plugin manifest do not mentionextensions/lib/provider-usage.ts:113High confidence
- Contacts app.kiro.dev, which SKILL.md, the README and the plugin manifest do not mentionextensions/lib/provider-usage.ts:314High confidence
- Contacts api.telegram.org, which SKILL.md, the README and the plugin manifest do not mentionextensions/telegram/api.ts:71High confidence
- Contacts api.elevenlabs.io, which SKILL.md, the README and the plugin manifest do not mentionextensions/telegram/stt.ts:70High confidence
- Contacts api.openai.com, which SKILL.md, the README and the plugin manifest do not mentionextensions/telegram/stt.ts:110High confidence
- Contacts api.elevenlabs.io, which SKILL.md, the README and the plugin manifest do not mentionextensions/telegram/worker-runtime.ts:572High confidence
- Contacts api.anthropic.com, which SKILL.md, the README and the plugin manifest do not mentionextensions/usage-bars/index.ts:66High confidence
- Contacts api.x.ai, which SKILL.md, the README and the plugin manifest do not mentionextensions/x-search/index.ts:21High confidence
- Contacts brew.sh, which SKILL.md, the README and the plugin manifest do not mentioninstall.sh:124High confidence
- Contacts www.apache.org, which SKILL.md, the README and the plugin manifest do not mentionmobile/rho-android/android/gradlew.bat:8High confidence
Signal confidence: 487 facts
- Network access in code of documentation.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md:317Low confidence
- Network access in code of documentation.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md:319Low confidence
- Network access in code of documentation.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md:395Low confidence
- Network access in code of documentation.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md:397Low confidence
- Access to secrets in code of documentation.agents/planning/2026-02-08-doom-style-config/design/detailed-design.md:437Low confidence
- Network access in prose of documentation.agents/planning/2026-02-08-doom-style-config/idea-honing.md:212Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:9Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:10Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:11Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:12Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:13Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:14Low confidence
- Network access in prose of documentation.agents/planning/2026-02-18-rho-web-multi-session/research/02-mobile-browser-runtime-constraints.md:16Low confidence
- Access to secrets in prose of documentation: a variable, placeholder or call, not a stored value.agents/planning/2026-02-21-rho-capacitor-native-app/design/detailed-design.md:46Low confidence
- Access to secrets in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/idea-honing.md:31Low confidence
- Access to secrets in prose of documentation: a variable, placeholder or call, not a stored value.agents/planning/2026-02-21-rho-capacitor-native-app/idea-honing.md:33Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:185Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:186Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:187Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:188Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:192Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-log.md:194Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-report.md:61Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-report.md:62Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/implementation/build-report.md:63Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:80Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:81Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:82Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:83Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:84Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:85Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:86Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/android-networking-and-release-readiness.md:87Low confidence
- Access to secrets in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:62Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:78Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:79Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:80Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:81Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:82Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:83Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:84Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:85Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/capacitor-security-and-session-patterns.md:86Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:102Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:103Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:104Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:105Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:106Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:107Low confidence
- Network access in prose of documentation.agents/planning/2026-02-21-rho-capacitor-native-app/research/dynamic-host-architecture-spike.md:108Low confidence
and 437 more
Only the first 500 facts are listed.
Works with
| Agent | Status | Evidence | Install to |
|---|---|---|---|
| Claude Code | Compatible | Standard SKILL.md SKILL.md | .claude/skills/<skill-name>/ |
| Codex | Native | Manifest AGENTS.md | .agents/skills/<skill-name>/ |
| Cursor | Compatible | Standard SKILL.md SKILL.md | .cursor/skills/<skill-name>/ |
| Gemini CLI | Compatible | Standard SKILL.md SKILL.md | .gemini/skills/<skill-name>/ |
| GitHub Copilot | Compatible | Standard SKILL.md SKILL.md | .github/skills/<skill-name>/ |
| OpenCode | Compatible | Standard SKILL.md SKILL.md | .opencode/skills/<skill-name>/ |
- Native The repository ships a manifest, folder or frontmatter field for this agent.
- Compatible A standard SKILL.md that this agent can read.
- Unknown No evidence either way.
Derived automatically from paths, manifests and frontmatter. Not tested on each agent.