Skip to content

Commit bb1b524

Browse files
committed
docs: Minor changes to README
- Improves notice of LLM-oriented docs - Adds telemetry warning about Wave and Warp terminals - Adds 'GUI' to glossary - Adds 2 new ADR items - Adds anchors for ADR description-list items - Fixes minor style/grammar/linting issues
1 parent c39dc91 commit bb1b524

1 file changed

Lines changed: 52 additions & 10 deletions

File tree

README.adoc

Lines changed: 52 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,8 @@ The provided system also works for solo practitioners who want a stable, isolate
8888

8989
[TIP]
9090
====
91-
LLMs or people engaging LLMs/agents to help them use DocOps Box should reference link:https://github.com/DocOps/box/blob/agent-docs/user-guidance/skill-skim.json[the Agent User Guidance skill].
91+
LLMs or people engaging LLMs/agents to help them use DocOps Box should reference link:https://raw.githubusercontent.com/DocOps/box/refs/heads/agent-docs/user-guidance/skill-skim.json[this JSON outline of the core agent guidance skill].
92+
There is also a link:https://raw.githubusercontent.com/DocOps/box/refs/heads/agent-docs/readme.md[Markdown version of this README] (with a link:https://raw.githubusercontent.com/DocOps/box/refs/heads/agent-docs/readme-skim.json[JSON skim outline] for token savings).
9293
====
9394

9495
Even if you don't use the images or tools provided, this guide should still be helpful for anyone orienting to the world of docs-as-code tools and workflows.
@@ -101,7 +102,7 @@ toc::[]
101102
== Introduction
102103

103104
// tag::agent-guide[]
104-
This project is geared as a guide and assets for meeting *_non_-developer tech or clerical workers*, typically on their *Windows* or maybe *MacOS* systems, not yet set up as "`development environments`" with tools like [.buzz]*Ruby*, [.buzz]*Node.js*, [.buzz]*Python*, [.buzz]*Git*, [.buzz]*Pandoc*, [.buzz]*Vale* and the world of capabilities that these tools open up.
105+
This project provides a guide and assets for meeting *_non_-developer tech or clerical workers*, typically on their *Windows* or maybe *MacOS* systems, not yet set up as "`development environments`" with tools like [.buzz]*Ruby*, [.buzz]*Node.js*, [.buzz]*Python*, [.buzz]*Git*, [.buzz]*Pandoc*, [.buzz]*Vale* and the world of capabilities that these tools open up.
105106
// end::agent-guide[]
106107

107108
[NOTE]
@@ -129,7 +130,7 @@ The next few sections are for users who want to understand the rationale and con
129130
[[tooling-overview]]
130131
=== Tooling Overview
131132

132-
The only real prerequisite for the "`Dockerized`" ("`containerized`") approach to establishing a robust DocOps environment, as provided in this project, is that you have Docker working on top of a [.term.term-unixlike]#Unix-like# [.term]#shell#<<gloss-shell,{gref}>>.
133+
The only real requirement for a "`Dockerized`" ("`containerized`") approach to establishing a robust DocOps environment, as provided in this project, is that you have Docker working on top of a [.term.term-unixlike]#Unix-like# [.term]#shell#<<gloss-shell,{gref}>>.
133134

134135
It makes the most sense for users who need a consistent mix of tools across multiple projects;
135136
setting up a separate Docker image per tool is at least as complicated as a native install.
@@ -281,6 +282,12 @@ Prerequisites:;;
281282
This section is somewhat long but should move along quickly.
282283
All of these apps are critical, some are likely already available on your system, and this guide covers installing them on any major platform.
283284

285+
[WARNING]
286+
====
287+
DocOps Box images require free space on your local disk.
288+
The `max:work` images are around 2.3 GB, and the `min:live` images are around 700 MB.
289+
====
290+
284291
// tag::agent-prerequisite-guidance[]
285292
// tag::prerequisites-all-os[]
286293
[[prereq-terminal]]
@@ -295,24 +302,29 @@ Use VS Code's terminal inside the containerized environment; use an external ter
295302

296303
If you are unaware of or unhappy with your terminal app, here are my recommendations per operating system.
297304

298-
[[warp-terminal]]
305+
[[warp-wave-terminal]]
299306
==== Warp and Wave
300307

301308
By far my two favorite terminal apps are Warp and Wave.
309+
Both are free, open-source programs with optional AI integration, at a cost.
310+
311+
[WARNING]
312+
Both Wave and Warp install with telemetry be enabled by default, and it is required for free AI use.
313+
Paid users can opt out of telemetry, as can free users not wishing to partake of the AI features.
302314

303-
Both are freemium open-source models with generous free tiers.
315+
Warp has a fully AI-integrated terminal that can be a little bit overwhelming but provides excellent interactivity between terminal and [.term]#GUI#<<gloss-gui,{gref}>>.
304316

305-
Warp has a fully integrated terminal that can be a little bit overwhelming.
317+
Wave's AI aspect is chat-only for now, so you have to copy and paste commands and output back and forth, though the chat can automatically read local files.
306318

307-
Wave is a chat-only tool for now, so you have to copy and paste commands and output back and forth, though the chat can automatically read local files.
319+
Both are excellent terminal emulators _aside from or despite_ the optional AI tie-in.
308320

309321
* link:https://www.warp.dev/terminal[Download Warp] (downloads for all platforms in page footer)
310322
* link:https://www.waveterm.dev/download[Download Wave]
311323

312324
// end::prerequisites-all-os[]
313325

314-
[[host-installs]]
315-
==== Host Terminal Apps
326+
[[os-terminals]]
327+
==== OS-specific terminal apps
316328

317329
If you prefer to install from an app store or package manager, here are some good options on all three platforms.
318330

@@ -656,7 +668,7 @@ To test that `dxbx` is working, run this command in your terminal:
656668
You should see a nicely formatted readout of available tools and be returned to your host shell prompt.
657669

658670
[%collapsible]
659-
.What was that?]
671+
.What was that?
660672
====
661673
The second half of the above command (`docops info`) is run inside any DocOps Box container for a readout of tool availability and versions.
662674
@@ -1590,6 +1602,11 @@ Refers to any prompt-based program you interact with by typing commands into a t
15901602
Most tools in the DocOps ecosystem are CLI tools.
15911603
CLI is effectively a superset which includes _TUI_ applications.
15921604

1605+
[[gloss-gui]]
1606+
GUI::
1607+
Short for _graphical user interface_, a program that presents interactive visual elements like windows, buttons, and menus.
1608+
Most terminal apps are "`GUIs`"; CLIs run inside the terminal interface, but the app offers menus, tabs, or other external visual elements.
1609+
15931610
[[gloss-tui]]
15941611
TUI::
15951612
For _text-based user interface_.
@@ -2346,26 +2363,37 @@ The only downside: you may miss them when stuck at a bare server Bash prompt, wh
23462363
[[adr]]
23472364
==== Architecture Decision Rationale
23482365

2366+
[[docker-compose]]
23492367
Why Docker + Compose?::
23502368
Raw `docker run` commands quickly grow unwieldy: volumes, ports, user IDs, environment variables, image tags, all of them manually specified each time.
23512369
Docker Compose externalizes all of that into a versioned `{compose_config_file}`, making the run configuration reproducible and shareable in Git.
23522370
+
23532371
Fortunately, the breadth of DocOps use cases does not require a complex multi-service setup, so the Compose file is simple and approachable for users new to Docker.
23542372

2373+
[[no-podman]]
2374+
Why no Podman support?::
2375+
Podman is a promising alternative to Docker that I simply don't have real experience with.
2376+
So far my clients and colleagues have already had access to and often professional support for Docker.
2377+
Adding Podman support seems like a worthy goal, but I have not investigated the complexity or the maintenance overhead it will add.
2378+
See about <<tool-request,tool requests below>> if you would like to see this added.
2379+
2380+
[[work-live]]
23552381
Why separate `work` and `live` contexts?::
23562382
Interactive daily work benefits from things that automated pipelines do not, such as Z shell, TUI text editors, and full terminal tooling.
23572383
Including these in a `live` CI/CD image wastes build time and inflates image size.
23582384
Separate contexts keep each image lean and purpose-built.
23592385
+
23602386
That said, you could also use one `max:work` image for both purposes early on if you don't wish to fuss about the distinction.
23612387

2388+
[[named-volumes]]
23622389
Why named volumes for all dependency caches?::
23632390
Dependency trees for Ruby, Node.js, and Python all produce Linux-native artifacts (compiled gem extensions, Node binary modules, Python virtualenv symlinks) that are wrong-architecture or broken when accessed from the host filesystem on MacOS or Windows.
23642391
Keeping them in named volumes (invisible to the host) removes that failure mode entirely and eliminates bind-mount overhead on MacOS.
23652392
Keeping dependency files invisible to the host filesystem also keeps searches cleaner than if they were stashed in a directory under the project root.
23662393
+
23672394
Dependency caches are _disposable and fully reproducible_ `bundle install`, `npm install`, or `pip install` regenerates them in minutes.
23682395

2396+
[[entrypoint]]
23692397
Why an entrypoint script?::
23702398
Docker images deployed to a registry cannot know the UID or GID of the user who will run them.
23712399
Placing UID/GID reconciliation in the image's own `ENTRYPOINT` script (rather than baking it at build time or requiring a separate file in the user's project) satisfies all three requirements simultaneously:
@@ -2374,11 +2402,25 @@ it runs on every `docker run` or `docker compose run` invocation, works with pre
23742402
The entrypoint detects the `HOST_UID` and `HOST_GID` environment variables (passed in by `{compose_config_file}`), adjusts the container user's identity to match, then drops privileges and executes the original command (`$CMD` or the default shell).
23752403
On MacOS with Docker Desktop, the VM layer provides transparent ownership mapping and the entrypoint is a no-op (it does nothing and throws no error).
23762404

2405+
[[tool-request]]
23772406
Why no [your runtime here]?::
23782407
The `max` images include Ruby, Node.js, and Python because they are the environments I repeatedly find myself using and recommending to clients.
23792408
Tempted as I am to add Java, Go, and Rust, I have no real experience supporting these platforms and only sporadic need.
23802409
Go, Haskell, and Rust applications typically compile to static binaries that run just fine on the host, such as Vale and Pandoc.
23812410
Adding more runtimes would also bloat the image size and build time, and I want to keep the project focused on documentation operations rather than becoming a general-purpose development environment.
2411+
+
2412+
_If you have a strong case for a runtime or tool_ not currently included that would likely be widely appreciated, link:https://github.com/DocOps/box/issues/new?labels=tool%20request[file a tool-request issue].
2413+
I will consider adding it if it fits the project's scope and my experience, or at least I will document my reasons for declining and help you build a custom image with your tool included.
2414+
2415+
pass:[<!-- vale DocOpsLab-Authoring.Spelling = NO -->]
2416+
2417+
[[vibe-code]]
2418+
Should we vibe code it?::
2419+
Absolutely not.
2420+
See link:https://docopslab.org/blog/vibe-coding-vs-programming/[my blog post] as well as link:https://passo.uno/tools-slop-is-a-problem/["`Most vibe-coded tools are not for you`"] from fellow traveler Fabrizio Ferri Benedetti for approved takes on the quality bar for shippable software.
2421+
LLM/agent assistance is welcome, but everything gets fully reviewed and manually pressure tested.
2422+
2423+
pass:[<!-- vale DocOpsLab-Authoring.Spelling = YES -->]
23822424

23832425
[appendix]
23842426
[[development]]

0 commit comments

Comments
 (0)