liteagents 2.8.2 → 2.8.3

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.
package/CHANGELOG.md CHANGED
@@ -17,6 +17,18 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
17
17
 
18
18
  ---
19
19
 
20
+ ## [2.8.3] - 2026-05-24
21
+
22
+ ### Security
23
+ - **Path containment uses a boundary match.** `installer/path-manager.js` confined installs to the home directory via `startsWith(homeDir)`, which would also accept a sibling like `${homeDir}-evil`. Now matches on a path separator (`=== homeDir || startsWith(homeDir + path.sep)`), and likewise for the temp dir. Defense-in-depth for a local installer; verified install/backup/uninstall still work.
24
+
25
+ ### Changed
26
+ - **`docs/INSTALLER_GUIDE.md` custom-path docs now match the installer.** It advertised `/opt/...`, `/mnt/...`, and team/external locations, but the installer confines paths to the home directory (or temp dir). Documented the real rule and corrected the examples.
27
+ - Removed decorative emoji from `README.md` headings (kept the friction traffic-light indicators).
28
+ - CI: bumped `actions/checkout` and `actions/setup-node` to v6 (Node 24) ahead of the June 2026 Node 20 deprecation.
29
+
30
+ ---
31
+
20
32
  ## [2.8.2] - 2026-05-24
21
33
 
22
34
  Maintenance release: removes the last of the legacy 3-variant system, fixes the broken `liteag` alias and post-install message, and trims the shipped documentation down to the README plus an accurate installer guide. No changes to the installed agents/commands/skills.
package/README.md CHANGED
@@ -28,7 +28,7 @@ Specialized AI agents and workflow commands for product management, agile develo
28
28
 
29
29
  ---
30
30
 
31
- ## 🚀 Quick Start
31
+ ## Quick Start
32
32
 
33
33
  ```bash
34
34
  # Option 1: NPX (recommended)
@@ -71,7 +71,7 @@ liteagents
71
71
 
72
72
  ---
73
73
 
74
- ## 🧠 Hot Memory — project-local learning from your own sessions
74
+ ## Hot Memory — project-local learning from your own sessions
75
75
 
76
76
  Liteagents ships a three-command pipeline that turns Claude Code's session logs into project-local memory. No databases, no external services, just markdown files the assistant reads via `@MEMORY.md`.
77
77
 
@@ -95,7 +95,7 @@ Per-Project:
95
95
  WORST: my-app/0203-1630-11eb903a peak=225 turns=127
96
96
  BEST: web-client/0202-2121-8d8608e1 peak=0 turns=4
97
97
 
98
- Verdict: USEFUL Intervention predictability: 93%
98
+ Verdict: USEFUL Intervention predictability: 93%
99
99
  ```
100
100
 
101
101
  Results land in `.claude/friction/antigen_review.md` with projects, error patterns, and offending tool sequences called out per cluster — so `/remember` can pick them up and encode them as rules the next session sees.
@@ -104,7 +104,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
104
104
 
105
105
  ---
106
106
 
107
- ## 🤖 What's Included
107
+ ## What's Included
108
108
 
109
109
  ### 11 Agents
110
110
 
@@ -132,7 +132,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
132
132
 
133
133
  **Manual Skills/Commands (20):**
134
134
 
135
- *Hot Memory Pipeline (3)* — see the [🧠 Hot Memory](#-hot-memory--project-local-learning-from-your-own-sessions) section above for the full walkthrough:
135
+ *Hot Memory Pipeline (3)* — see the [Hot Memory](#hot-memory--project-local-learning-from-your-own-sessions) section above for the full walkthrough:
136
136
  - **stash** - Snapshot session context to `.claude/stash/` before compaction, handoff, or ending complex work
137
137
  - **friction** - Analyze all JSONL sessions for frustration signals, cluster failures per project, surface antigens
138
138
  - **remember** - Consolidate stashes + friction antigens into `.claude/memory/MEMORY.md`; auto-injected via `@MEMORY.md`
@@ -162,7 +162,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
162
162
 
163
163
  ---
164
164
 
165
- ## 📖 Documentation
165
+ ## Documentation
166
166
 
167
167
  | Document | Description |
168
168
  |----------|-------------|
@@ -171,7 +171,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
171
171
 
172
172
  ---
173
173
 
174
- ## 💡 Example Workflows
174
+ ## Example Workflows
175
175
 
176
176
  **Feature Development:**
177
177
  ```
@@ -198,7 +198,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
198
198
 
199
199
  ---
200
200
 
201
- ## 📊 Stats
201
+ ## Stats
202
202
 
203
203
  - **11** Specialized Agents
204
204
  - **22** Workflow Commands & Skills
@@ -207,7 +207,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
207
207
 
208
208
  ---
209
209
 
210
- ## 🔗 Links
210
+ ## Links
211
211
 
212
212
  - **npm:** https://www.npmjs.com/package/liteagents
213
213
  - **GitHub:** https://github.com/hamr0/liteagents
@@ -215,7 +215,7 @@ Results land in `.claude/friction/antigen_review.md` with projects, error patter
215
215
 
216
216
  ---
217
217
 
218
- ## 📄 License
218
+ ## License
219
219
 
220
220
  Apache-2.0 © 2026 hamr0 — see [LICENSE](LICENSE).
221
221
 
@@ -58,8 +58,9 @@ class PathManager {
58
58
  const homeDir = this.homeDir;
59
59
  const tmpDir = os.tmpdir();
60
60
 
61
- const isInHome = sanitized.startsWith(homeDir);
62
- const isInTmp = sanitized.startsWith(tmpDir);
61
+ // Match on a path boundary so a sibling like `${homeDir}-evil` can't pass.
62
+ const isInHome = sanitized === homeDir || sanitized.startsWith(homeDir + path.sep);
63
+ const isInTmp = sanitized === tmpDir || sanitized.startsWith(tmpDir + path.sep);
63
64
 
64
65
  if (!isInHome && !isInTmp) {
65
66
  return {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "liteagents",
3
- "version": "2.8.2",
3
+ "version": "2.8.3",
4
4
  "description": "AI development toolkit with 11 specialized agents and 23 commands including live-canvas UI design with click-to-annotate feedback. Simple one-question installer for Claude, Opencode, Ampcode, and Droid.",
5
5
  "main": "index.js",
6
6
  "bin": {