docs: some elaboration

Amolith created

Change summary

README.md | 50 ++++++++++++++++++++++++++++++--------------------
1 file changed, 30 insertions(+), 20 deletions(-)

Detailed changes

README.md 🔗

@@ -12,22 +12,23 @@ _nasin pali_, installed as `np`, is a CLI tool that encourages LLMs in agentic
 coding tools (specifically coding, I don't think we want to support generic
 workflows) to do a bit more planning before going off and making a bunch of
 changes. It is _both_ meant for humans and LLMs; there are subcommands that
-produce instructions for the model and subcommands that let the human inspect
-what the model's doing.
+produce output for the model and subcommands for the human to inspect the
+model's progress.
 
 The todo systems built into agentic coding tools are often just that: todo and
-nothing else. They also, if I understand correctly, have the LLM reproduce the
-entire task list with each `todo_write` invocation, which just seems crazy to
-me. What if it decides it doesn't want to do a task because it's "too hard" and
-it just omits that task next time it writes the list? _nasin pali_ does things a
-little differently.
+nothing else. I think (backed by no evidence) that they do better when they can
+also set a goal. If I understand the coding tools correctly, they also have the
+LLM reproduce the entire task list with each `todo_write` invocation, which just
+seems wasteful and careless to me. What if it decides it doesn't want to do a
+task because it's "too hard" and it just omits that task next time it writes the
+list? _nasin pali_ helps force the model into a different flow.
 
 - Start a new session with `np s` . It adds details to the global sqlite
   database and produces output to guide the LLM through its next steps. Instead
-  of telling the model up-front about everything it can do with _nasin pali_,
-  all the sub-commands and flags, we only reveal the sub-commands and flags it
-  might actually need once it needs them. It shouldn't ever use the interactive
-  commands, so we don't tell them model about them.
+  of telling the model up-front about everything it can do with _nasin pali_
+  though AGENTS.md or tool definitions or something, we only reveal the
+  sub-commands and flags it might actually need once it needs them. It shouldn't
+  ever use the interactive commands, so we never tell them model about them.
 
   - There can be one active session per working directory and the previous
     session must be archived before starting a new one. This is so the model
@@ -41,15 +42,24 @@ little differently.
   necessary, look around at additional relevant files before adding some tasks
   with `np t a`
 
-When multi-line inputs are required, use
+## The name
 
-```text
-np goal set "Sentence case title" "$(cat <<'EOF'
-Multi-line
+Is [toki pona](https://tokipona.org/). [_nasin_](https://nimi.li/nasin) occupies
+the semantic space of "method, doctrine, tradition; path, road, way" while
+[_pali_](https://nimi.li/pali) covers "work, activity; create, build, design;
+put effort toward, take action on". Together and in this context, _nasin pali_
+could be translated as "the way of work", "the doctrine of design", etc.
 
-- Body
-- Here
+## Random thoughts
 
-EOF
-)"
-```
+- When providing multiple lines for the body, use
+
+  ```bash
+  np goal set "Sentence case title" "$(cat <<'EOF'
+  Multi-line
+  - Body
+  - Here
+
+  EOF
+  )"
+  ```