<#909 Node-scoped read-only console powered by hid...
# osctrl
g
#909 Node-scoped read-only console powered by hidden accelerated distributed queries Pull request opened by javuto Summary Adds a node-scoped read-only console powered by hidden accelerated osquery distributed queries. Changes • Added
console
distributed query type for internal console commands. • Console queries are hidden from normal query lists and hidden-query tabs. • Pending console queries request accelerated delivery when returned to osquery. • Added console sessions with per-session working directory. • Added read-only shell-like commands: •
pwd
•
help
•
clear
•
ls [path]
•
stat <path>
•
ps
•
cd <path>
•
sql <select ...>
• Enforced one in-flight command per console session. • Added console API routes gated by
QueryLevel
permissions. • Added session ownership checks so users cannot drive another user's console session. • Added React console UI with pending spinner, result rendering, and polling. • Added Console button on node detail pages only when accelerated mode is enabled. • Exposed
accelerated
through
/api/v1/features
. Validation •
go test ./pkg/queries ./pkg/console ./cmd/api ./cmd/tls/handlers ./cmd/tls
•
go test ./cmd/api/handlers -run Console
•
go test ./cmd/api/handlers -run Features
•
npm test -- NodeConsolePage.test.tsx
•
npm test -- NodeDetailPage.test.tsx EnvConfigPage.test.tsx
•
npm run check
•
npm run build
Notes • V1 is read-only. •
cat
is intentionally unsupported because osquery does not expose arbitrary file contents. • The Console UI is hidden unless
osquery.accelerated
is enabled. • Vite build passes with the existing large chunk-size warning. jmpsec/osctrl