90 lines
5.6 KiB
Markdown
90 lines
5.6 KiB
Markdown
# Constellation
|
|
|
|
An evolving personal computing environment. This is the current design, starting
|
|
fresh with iteration two; decisions can change through discussion and use.
|
|
See [working state](constellation-work.md) for how we collaborate and where to resume.
|
|
|
|
## Philosophy
|
|
|
|
Build a quiet, keyboard-driven, text-oriented environment from understandable
|
|
tools that compose naturally. Keep information accessible through standard formats
|
|
and interfaces, so humans and agents can work with the same underlying resources.
|
|
Organize files and workflows consistently, making it intuitive where to look,
|
|
where things belong and how to proceed. Let structure guide everyday work while
|
|
leaving room for exploration and exceptions. Use graphical applications where
|
|
they serve the task well.
|
|
|
|
Make the usual path obvious and exceptions understandable. Consistency should
|
|
reduce remembering and decision-making without requiring identical bindings or
|
|
fixed procedures everywhere. A terminal interface alone does not establish fit.
|
|
|
|
Nix configures installed tools and system integration. Working directories,
|
|
checkouts, workspace `.envrc` files and context documents are ordinary user-owned
|
|
files, maintained directly rather than generated by Home Manager. A workbench may
|
|
use a flake to declare its tools without Nix owning the surrounding workspace.
|
|
|
|
## What that means so far
|
|
|
|
- Neovim, Niri, Walker and the terminal feel right: direct, keyboard-driven
|
|
interaction with useful connections to the rest of the environment.
|
|
- Use Handy for local plain dictation, mainly English with occasional Dutch.
|
|
Use native Wayland automatic paste and optional live text with a streaming model.
|
|
Handy owns its preferences, models and recordings. Nix installs and starts it
|
|
and supplies desktop shortcuts, including a short-lived push-to-talk listener. Cleanup
|
|
through Codex, a cloud API or a local language model is deferred.
|
|
- Outlook is acceptable as an application, but its interaction and integration
|
|
do not fit as naturally. Accessible mail for tools and agents matters separately
|
|
from choosing a mail reader. Preserve meaning and source context, not just text.
|
|
- Herdr is the chosen agent workspace manager: its spaces, running-agent overview
|
|
and attention states fit. Adapt its keybindings to the keyboard-driven setup.
|
|
Use Ctrl+Alt for direct Herdr actions alongside Super for Niri and Ctrl navigation
|
|
in Neovim; retain Herdr's prefix bindings. Agent-deck's startup issues and other
|
|
session-manager alternatives are not the current focus.
|
|
- Current friction is a lack of consistent project and agent working practices,
|
|
including Niri workspace use. Tool choice and agent collaboration need to be
|
|
considered together. Alignment, maintainability and human attention matter
|
|
alongside speed/cost. Agent-workflow evaluation is deferred; no fixed delegation
|
|
pattern has been selected.
|
|
- Repositories should contain code and documentation needed by that code, not
|
|
become containers for general notes and company material destined for Git remotes.
|
|
- Company work includes repositories, reference material, notes, credentials and
|
|
investigation tools. Its organization must accommodate those different roles.
|
|
- Actual work is mostly project-based; notes are primarily meeting notes so far.
|
|
Do not impose a topic/investigation workflow or a fixed future note taxonomy.
|
|
- Yookr workbench is an investigation environment, not a product repository.
|
|
Its placement and versioning can be considered separately.
|
|
- Accepted direction: workbench supplies the environment at the company-workspace
|
|
root. Its reusable requests live in `workbench/http/` and queries in
|
|
`workbench/databases/`, grouped by service/database;
|
|
the company root need not itself be a Git repository.
|
|
- Expose native capabilities and useful context rather than a menu of predetermined
|
|
investigations. The custom inventory and mail helpers are archived; native
|
|
Garden/kubectl/K9s own the documented Kubernetes workflow. Mail retrieval and
|
|
broader system access remain exploratory.
|
|
- Accepted interaction direction: find HTTP requests by service; start database
|
|
exploration from a named connection. Keep targets visible and use the existing
|
|
execution vocabulary. Working queries should survive restart without automatically
|
|
becoming reusable tracked material. Company-wide Neovim search is deferred: no
|
|
concrete use case currently justifies adding it.
|
|
- Human credential delivery uses environment variables with both test and live
|
|
credentials available. Keep ordinary editor startup; no per-connection launcher
|
|
or on-demand decryption workflow. Agent authority is a separate concern.
|
|
- Separate read-only company credentials for agents are the eventual direction.
|
|
Access isolation is explicitly deferred: new credentials cannot be made now.
|
|
Existing agent access boundaries remain in force; this does not block unrelated
|
|
design and organization work.
|
|
|
|
The company root is `~/yookr`, with repositories in `~/yookr/projects` and the
|
|
cross-project workbench in `~/yookr/workbench`. Personal/non-company repositories
|
|
live under `~/projects/{own,ext,forks}`. Projects currently mostly live in their
|
|
repositories; no extra project containers are needed. Meeting notes remain in
|
|
`~/sync/notes`. Remaining layout and credential locations are still being explored.
|
|
|
|
## Sources
|
|
|
|
`~/sync/notes/setup-todo.md` is the idea inbox, not a committed backlog.
|
|
Existing implementation is the starting system, not a fixed future architecture.
|
|
Documents under [.archive/](.archive/) are historical evidence; consult only the
|
|
relevant parts when needed. Their plans, priorities and old approvals do not define
|
|
this iteration. Preserve existing work while reconsidering its design.
|