Skip to content

feat: Emacs OSINT workbench foundation (profiles, star:// URIs, object and search buffers) - #133

Open
lost-rob0t wants to merge 3 commits into
masterfrom
agent/emacs-osint-workbench
Open

feat: Emacs OSINT workbench foundation (profiles, star:// URIs, object and search buffers)#133
lost-rob0t wants to merge 3 commits into
masterfrom
agent/emacs-osint-workbench

Conversation

@lost-rob0t

Copy link
Copy Markdown
Owner

Summary

First slice of the Emacs OSINT workbench (plan: docs/emacs-workbench-plan.org, inventory: docs/emacs-workbench-inventory.org).

  • Server profiles (starintel-server.el): named deployments, per-request auth-source credential resolution, profile identity stamped into references, capability-cache invalidation on switch.
  • star:// URIs (starintel-uri.el): star://SERVER/KIND/ID parse/format/open, percent-encoding round-trip, Org "star" link registration, extensible kind handlers.
  • Object identity + generic buffer (starintel-object.el): starintel-object references (server/dtype/id/uri), dtype-aware titles from actual 0.9 data fields only, typed rendering of data/sources/provenance (extensions.star_server), copy id/URI, refresh, raw JSON view.
  • Search workbench (starintel-search.el): capability-resolved search in a tabulated-list-mode buffer — open/copy/Mark actions, server-bookmark pagination, clean unavailable-capability errors.
  • Entry point (starintel.el): M-x starintel with optional transient menu.
  • client.el: starintel-api-error-message now redacts plain user-error strings (typed UI errors); legacy layer untouched.

Verification

  • make test-emacs: 87/87 ERT tests green (42 existing + 45 new hermetic workbench tests).
  • Byte-compile clean for all new modules.
  • Live smoke vs dev deployment (127.0.0.1:5000): capabilities (9 endpoints), search round-trip, stats, live deadline enforcement verified; authenticated document fetch pending validation with a local credential.

Author: nsaspy

- named server profiles with auth-source credential resolution and
  current-server identity stamped into every object reference
- star:// URI scheme: parse/format/open with org link registration
- canonical object identity plus generic object buffer rendering
  0.9 data fields and extensions.star_server provenance
- actionable tabulated-list search buffer with marking, bookmark
  pagination, and typed unavailable-capability errors
- M-x starintel workbench entry with optional transient menu
- 45 new hermetic ERT tests; client error-message helper now
  reports plain UI user-errors redacted
- docs: workbench implementation inventory and execution plan
- :auth-source accepts a host shorthand (login defaults to api) or
  an explicit (:host :user) plist
- credentials resolve per request via auth-source-search; document
  the encrypted ~/.authinfo.gpg workflow and redaction guarantees
- rename the entry module to starintel-ui.el (provide starintel-ui);
  the interactive entry point stays M-x starintel
- add autoload cookies for the interactive command surface and
  generate starintel-ui-autoloads in the flake package
- flake: packages.starintel-ui built via emacsPackages.trivialBuild
  over the runtime elisp only (tests excluded from site-lisp)
@lost-rob0t
lost-rob0t force-pushed the agent/emacs-osint-workbench branch from dcb5320 to 0ba16d5 Compare August 29, 2026 11:27
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant