@plurnk/plurnk-grammar 0.74.5 → 0.74.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/package.json +1 -1
  2. package/plurnk.md +36 -51
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-grammar",
3
- "version": "0.74.5",
3
+ "version": "0.74.7",
4
4
  "description": "ANTLR4 grammar for the Plurnk LLM agent protocol",
5
5
  "type": "module",
6
6
  "license": "MIT",
package/plurnk.md CHANGED
@@ -89,62 +89,47 @@ Body content is character-perfect, exactly matching whitespace.
89
89
 
90
90
  YOU MUST begin the turn with <<PLAN:plan goes here:PLAN
91
91
  YOU MUST ONLY use EXEC commands for actions that can't be performed with Extended HEREDOC Plurnk Operations.
92
- YOU MUST NOT emit free text between operations.
93
92
  YOU SHOULD NOT leak internal resource information when SENDing user messages.
94
93
  YOU MUST document all relevant questions and uncertainties into taxonomized, tagged, and topical unknown entries.
95
94
  YOU MUST ONLY populate known entries with source entry information, never with model training.
96
95
  YOU SHOULD manage your own context with OPEN, FOLD, and KILL to maximize signal, as irrelevant tokens degrade reasoning.
97
96
  YOU SHOULD leverage taxonomic path names, folksonomic tags, and bulk pattern operations to optimize for context relevance.
98
- YOU MUST terminate the turn by SENDing a message to the user with the proper status code.
99
-
100
- 102: submit a continuing turn with status code 102: <<SEND[102]:Forking a research run, optimizing log relevance.:SEND
101
- 200: submit a final turn with status code 200: <<SEND[200]:Paris:SEND
102
- 202: submit a waiting/idle loop with status code 202: <<SEND[202]:Parked until the capital-checker reports.:SEND
103
- 499: submit a failed loop with status code 499: <<SEND[499]:Aborted: Unrecoverable internal error:SEND
97
+ YOU MUST terminate the turn by SENDing a message to the user with the proper status code (102, 200, 202, or 499).
104
98
 
105
99
  ## Examples
106
100
 
107
- <<FIND(config/**/*.xml)://user[@role='admin']:FIND
108
- <<READ(lang/??.json):$.greeting:READ
109
- <<READ(plurnk://docs/sh.md):$.Environment:READ
110
- <<READ(README.md)://h2/text():READ
111
- <<READ(known:///users.json):$[?(@.role=="admin")]:READ
112
- <<READ(log:///1/2/3):$[*].matched.codename:READ
113
- <<READ(node:///3/1/2#stdout)<1,40>::READ
114
- <<READ(../../../../etc/hosts)<2>::READ
115
- <<READ(https://en.wikipedia.org/wiki/Paris)<426,465>::READ
116
- <<EDIT[philosophy,existentialism](known:///philosophy/existentialism/meaning.md):The meaning of life is 42:EDIT
117
- <<EDIT[france,geography](unknown:///countries/france/capital.md):What is the capital of France?:EDIT
118
-
119
- <<EDIT[plan,france,task](known:///plan.md):
120
- - [ ] Decompose prompt into unknowns
121
- - [ ] Discover capital of France
122
- - [ ] Deliver
123
- :EDIT
124
-
125
- <<EDIT(known:///plan.md)<2>:- [x] Discover capital of France:EDIT
126
- <<EDIT(known:///countries/france/capital.md)<-1>:[Wikipedia: Paris](https://en.wikipedia.org/wiki/Paris):EDIT
127
- <<EDIT(known:///countries/france/capital.md)<1,-1>::EDIT
128
- <<EDIT(known:///users.json)<0>:{"name":"Eve"}:EDIT
129
- <<COPY[archive,2026-05-14](known:///draft.md):known:///archive/2026-05-14/draft.md:COPY
130
- <<MOVE[final](known:///draft/answer.md):known:///final/answer.md:MOVE
131
- <<KILL(known:///draft.md)::KILL
132
- <<KILL(obsolete/file.md)::KILL
133
- <<KILL(sh:///3/1/2)::KILL
134
- <<KILL[9](sh:///3/1/3)::KILL
135
- <<EDIT(run://capital-checker):Find the capital of France.:EDIT
136
- <<COPY(run://.):Re-derive the capital from a primary source.:COPY
137
- <<OPEN(log:///**/get)<1,10>::OPEN
138
- <<FIND(known:///**)<5>:~french revolutionary history:FIND
139
- <<FIND(known:///**)<0.7>:~french territorial concessions:FIND
140
- <<FOLD(log:///**/get)<101,200>::FOLD
141
- <<FIND(log:///**/error):#timeout|deadline exceeded#i:FIND
142
- <<FIND(known:///**):revolution:FIND
143
- <<FIND(#(draft|final)/.*#i)::FIND
144
- <<FIND(#src/.*\.test\.ts#)::FIND
145
- <<FIND(src/**):@<createCoder:FIND
146
- <<SEND(run://capital-checker):{"hint":"known entries are your persistent memory"}:SEND
147
-
148
- <<EDIT[tutorial,training,scripts](example.sh):#!/usr/bin/env sh
149
- echo "Taxonomic path names and folksonomic tags on entries improve reasoning and recall!" > advice.txt
150
- :EDIT
101
+ * <<FIND(config/**/*.xml)://user[@role='admin']:FIND
102
+ * <<READ(lang/??.json):$.greeting:READ
103
+ * <<READ(plurnk://docs/sh.md):$.Environment:READ
104
+ * <<READ(README.md)://h2/text():READ
105
+ * <<READ(known:///users.json):$[?(@.role=="admin")]:READ
106
+ * <<READ(log:///1/2/3):$[*].matched.codename:READ
107
+ * <<READ(node:///3/1/2#stdout)<1,40>::READ
108
+ * <<READ(../../../../etc/hosts)<2>::READ
109
+ * <<READ(https://en.wikipedia.org/wiki/Paris)<426,465>::READ
110
+ * <<EDIT[philosophy,existentialism](known:///philosophy/existentialism/meaning.md):The meaning of life is 42:EDIT
111
+ * <<EDIT[france,geography](unknown:///countries/france/capital.md):What is the capital of France?:EDIT
112
+ * <<EDIT[plan,france,task](known:///plan.md):- [ ] Decompose prompt into unknowns:EDIT
113
+ * <<EDIT(known:///plan.md)<2>:- [x] Discover capital of France:EDIT
114
+ * <<EDIT(known:///countries/france/capital.md)<-1>:[Wikipedia: Paris](https://en.wikipedia.org/wiki/Paris):EDIT
115
+ * <<EDIT(known:///countries/france/capital.md)<1,-1>::EDIT
116
+ * <<EDIT(known:///users.json)<0>:{"name":"Eve"}:EDIT
117
+ * <<COPY[archive,2026-05-14](known:///draft.md):known:///archive/2026-05-14/draft.md:COPY
118
+ * <<MOVE[final](known:///draft/answer.md):known:///final/answer.md:MOVE
119
+ * <<KILL(known:///draft.md)::KILL
120
+ * <<KILL(obsolete/file.md)::KILL
121
+ * <<KILL(sh:///3/1/2)::KILL
122
+ * <<KILL[9](sh:///3/1/3)::KILL
123
+ * <<EDIT(run://capital-checker):Find the capital of France.:EDIT
124
+ * <<COPY(run://.):Re-derive the capital from a primary source.:COPY
125
+ * <<OPEN(log:///**/get)<1,10>::OPEN
126
+ * <<FIND(known:///**)<5>:~french revolutionary history:FIND
127
+ * <<FIND(known:///**)<0.7>:~french territorial concessions:FIND
128
+ * <<FOLD(log:///**/get)<101,200>::FOLD
129
+ * <<FIND(log:///**/error):#timeout|deadline exceeded#i:FIND
130
+ * <<FIND(known:///**):revolution:FIND
131
+ * <<FIND(#(draft|final)/.*#i)::FIND
132
+ * <<FIND(#src/.*\.test\.ts#)::FIND
133
+ * <<FIND(src/**):@<createCoder:FIND
134
+ * <<SEND(run://capital-checker):{"hint":"known entries are your persistent memory"}:SEND
135
+ * <<EDIT[tutorial,training,scripts](example.sh):echo "Taxonomic path names and folksonomic tags on entries improve reasoning and recall!" > advice.txt:EDIT