@draig/lexis-two 1.0.0
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/.agents/plugins/marketplace.json +21 -0
- package/.claude-plugin/marketplace.json +29 -0
- package/.claude-plugin/plugin.json +9 -0
- package/.clinerules/lexis-two.md +163 -0
- package/.codex-plugin/plugin.json +31 -0
- package/.cursor/rules/lexis-two.mdc +169 -0
- package/.env.example +8 -0
- package/.github/FUNDING.yml +1 -0
- package/.github/copilot-instructions.md +47 -0
- package/.github/plugin/marketplace.json +20 -0
- package/.github/plugin/plugin.json +16 -0
- package/.github/workflows/deploy-site.yml +53 -0
- package/.github/workflows/test.yml +29 -0
- package/.kiro/steering/lexis-two.md +167 -0
- package/.nojekyll +0 -0
- package/.opencode/command/lexis-two-audit.md +5 -0
- package/.opencode/command/lexis-two-debt.md +5 -0
- package/.opencode/command/lexis-two-help.md +5 -0
- package/.opencode/command/lexis-two-plan.md +5 -0
- package/.opencode/command/lexis-two-review.md +5 -0
- package/.opencode/command/lexis-two-security.md +5 -0
- package/.opencode/command/lexis-two.md +5 -0
- package/.opencode/plugins/lexis-two.mjs +74 -0
- package/.windsurf/rules/lexis-two.md +163 -0
- package/AGENTS.md +163 -0
- package/AUDIT.md +74 -0
- package/CNAME +1 -0
- package/LICENSE +23 -0
- package/README.md +301 -0
- package/SPECXIS.md +576 -0
- package/assets/benchmark-3model.svg +21 -0
- package/assets/lexis-two-complete.webp +0 -0
- package/assets/lexis-two-nobg.png +0 -0
- package/assets/logo.png +0 -0
- package/assets/social-preview.png +0 -0
- package/benchmarks/README.md +114 -0
- package/benchmarks/arms/baseline.js +2 -0
- package/benchmarks/arms/caveman-SKILL.md +67 -0
- package/benchmarks/arms/caveman.js +8 -0
- package/benchmarks/arms/lexis-two.js +10 -0
- package/benchmarks/arms/ponytail.js +6 -0
- package/benchmarks/behavior.js +58 -0
- package/benchmarks/behavior.yaml +40 -0
- package/benchmarks/benchmark-local.py +156 -0
- package/benchmarks/benchmark-opencode-go.js +294 -0
- package/benchmarks/correctness.js +294 -0
- package/benchmarks/lib/aggregate-opencode-go.js +103 -0
- package/benchmarks/lib/load-env.js +31 -0
- package/benchmarks/lib/opencode-go-client.js +151 -0
- package/benchmarks/loc.js +13 -0
- package/benchmarks/opencode-go-models.json +31 -0
- package/benchmarks/promptfooconfig.yaml +41 -0
- package/benchmarks/prompts.json +15 -0
- package/benchmarks/render-opencode-go-report.js +28 -0
- package/benchmarks/results/2026-06-15-llama3.2-local.md +76 -0
- package/benchmarks/results/2026-06-16-opencode-go.md +56 -0
- package/benchmarks/results/opencode-go-2026-06-16-report.html +226 -0
- package/benchmarks/results/opencode-go-2026-06-16.json +1339 -0
- package/commands/lexis-two-audit.toml +3 -0
- package/commands/lexis-two-debt.toml +3 -0
- package/commands/lexis-two-help.toml +3 -0
- package/commands/lexis-two-plan.toml +3 -0
- package/commands/lexis-two-review.toml +3 -0
- package/commands/lexis-two-security.toml +3 -0
- package/commands/lexis-two.toml +3 -0
- package/docs/assets/lexis-two-nobg.png +0 -0
- package/docs/assets/logo.png +0 -0
- package/docs/assets/logo.svg +4 -0
- package/docs/portability.md +147 -0
- package/docs/site.md +52 -0
- package/examples/api-endpoint.md +68 -0
- package/examples/caching.md +74 -0
- package/examples/date-picker.md +48 -0
- package/examples/email-validation.md +51 -0
- package/examples/sorting.md +42 -0
- package/gemini-extension.json +7 -0
- package/hooks/copilot-hooks.json +21 -0
- package/hooks/hooks.json +31 -0
- package/hooks/lexis-two-activate.js +72 -0
- package/hooks/lexis-two-config.js +101 -0
- package/hooks/lexis-two-instructions.js +126 -0
- package/hooks/lexis-two-mode-tracker.js +55 -0
- package/hooks/lexis-two-runtime.js +50 -0
- package/hooks/lexis-two-statusline.ps1 +19 -0
- package/hooks/lexis-two-statusline.sh +11 -0
- package/opencode.json +4 -0
- package/package.json +31 -0
- package/pi-extension/index.js +161 -0
- package/pi-extension/package.json +8 -0
- package/pi-extension/test/extension.test.js +89 -0
- package/pi-extension/test/helpers.test.js +35 -0
- package/scripts/check-rule-copies.js +82 -0
- package/site/astro.config.mjs +18 -0
- package/site/package-lock.json +4913 -0
- package/site/package.json +14 -0
- package/site/public/CNAME +1 -0
- package/site/public/assets/lexis-two-nobg.png +0 -0
- package/site/public/assets/logo.png +0 -0
- package/site/public/assets/logo.svg +4 -0
- package/site/public/robots.txt +4 -0
- package/site/src/components/Adapt.astro +33 -0
- package/site/src/components/Benchmarks.astro +232 -0
- package/site/src/components/Commands.astro +33 -0
- package/site/src/components/Ecosystem.astro +30 -0
- package/site/src/components/Example.astro +77 -0
- package/site/src/components/Footer.astro +28 -0
- package/site/src/components/Header.astro +87 -0
- package/site/src/components/Hero.astro +58 -0
- package/site/src/components/Home.astro +46 -0
- package/site/src/components/Hosts.astro +62 -0
- package/site/src/components/Install.astro +143 -0
- package/site/src/components/LanguageSwitcher.astro +82 -0
- package/site/src/components/Philosophy.astro +23 -0
- package/site/src/components/Stacks.astro +33 -0
- package/site/src/components/Suggested.astro +39 -0
- package/site/src/data/opencode-go-benchmark.json +230 -0
- package/site/src/i18n/en.ts +155 -0
- package/site/src/i18n/es.ts +158 -0
- package/site/src/i18n/index.ts +14 -0
- package/site/src/layouts/Layout.astro +114 -0
- package/site/src/pages/benchmarks.astro +4 -0
- package/site/src/pages/es/benchmarks.astro +4 -0
- package/site/src/pages/es/index.astro +10 -0
- package/site/src/pages/index.astro +10 -0
- package/site/src/styles/global.css +780 -0
- package/site/tsconfig.json +3 -0
- package/skills/lexis-two/SKILL.md +109 -0
- package/skills/lexis-two-audit/SKILL.md +21 -0
- package/skills/lexis-two-debt/SKILL.md +22 -0
- package/skills/lexis-two-plan/SKILL.md +25 -0
- package/skills/lexis-two-review/SKILL.md +24 -0
- package/skills/lexis-two-security/SKILL.md +24 -0
- package/tests/behavior.test.js +80 -0
- package/tests/commands.test.js +40 -0
- package/tests/copilot-plugin.test.js +33 -0
- package/tests/correctness.test.js +191 -0
- package/tests/gemini-extension.test.js +78 -0
- package/tests/hooks-windows.test.js +48 -0
- package/tests/hooks.test.js +177 -0
- package/tests/opencode-plugin.test.js +64 -0
package/AUDIT.md
ADDED
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
# Audit Report — lexis-two v1.0.0
|
|
2
|
+
|
|
3
|
+
**Date:** 2026-06-16
|
|
4
|
+
**Scope:** Full project (repo root, hooks, commands, skills, plugins, site, tests, docs)
|
|
5
|
+
**Method:** Parallel audit across 3 agents (root+tests, hooks+commands+skills+plugins, docs+examples+assets)
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## HIGH
|
|
10
|
+
|
|
11
|
+
| # | File | Issue |
|
|
12
|
+
|---|------|-------|
|
|
13
|
+
| 1 | `package.json` | **Version mismatch.** Root said `0.1.0`, plugin manifests said `4.6.0` (Ponytail legacy). Unified to `1.0.0` across all manifests. |
|
|
14
|
+
| 2 | `README.md:188-219` | **Roadmap desync.** v0.3 items unchecked but files exist: `pi-extension/`, `examples/`, `.claude-plugin/`, `.codex-plugin/`, `.github/plugin/`. Checkboxes should reflect reality. |
|
|
15
|
+
| 3 | `hooks/copilot-hooks.json` | **Missing node availability check.** Unlike `hooks.json` (Claude Code) which wraps node calls in `command -v node ... || exit 0`, Copilot hooks run `node` directly. Crashes if node is absent instead of degrading. |
|
|
16
|
+
| 4 | `.codex-plugin/plugin.json:13,28-29` | **Broken relative paths.** `"skills": "./skills/"` and `"logo": "./assets/logo.png"` resolve inside `.codex-plugin/` (nonexistent). Should be `../skills/` and `../assets/logo.png`. |
|
|
17
|
+
|
|
18
|
+
## MEDIUM
|
|
19
|
+
|
|
20
|
+
| # | File | Issue |
|
|
21
|
+
|---|------|-------|
|
|
22
|
+
| 5 | `tests/hooks.test.js` | **No `node:test` blocks.** Runs assertions as top-level code. First failure stops the rest. Inconsistent with all other test files. |
|
|
23
|
+
| 6 | `tests/hooks.test.js:3` | **`require('assert')` instead of `require('node:assert/strict')`.** Loose comparison could mask type coercion bugs. |
|
|
24
|
+
| 7 | `tests/hooks.test.js:21` | **Mutates `process.env` globally** without restore. Fragile if Node parallelizes test files. |
|
|
25
|
+
| 8 | `commands/lexis-two.toml` | **Missing `name` field.** All other 6 TOML commands have `name`. This one only has `description` + `prompt`. |
|
|
26
|
+
| 9 | `hooks/lexis-two-instructions.js:75` + `lexis-two-config.js:32` | **`normalizePersistedMode` duplicated.** Same function name, different implementations. Risk of silent divergence. |
|
|
27
|
+
| 10 | `docs/portability.md:6` | **Stale reference.** Says "static landing in `docs/`" but site source is in `site/`. |
|
|
28
|
+
| 11 | `examples/` | **Stack mismatch with roadmap.** README promises Next.js, Express, MongoDB, PostgreSQL examples. Actual: Python/FastAPI + JS vanilla. |
|
|
29
|
+
| 12 | `tests/gemini-extension.test.js:26` | **Hardcoded command subset.** Only validates 2 of 7 command files. Other tests cover more. |
|
|
30
|
+
|
|
31
|
+
## LOW
|
|
32
|
+
|
|
33
|
+
| # | File | Issue |
|
|
34
|
+
|---|------|-------|
|
|
35
|
+
| 13 | `.github/workflows/test.yml` | No npm dependency caching (deploy.yml has it). |
|
|
36
|
+
| 14 | `.github/workflows/test.yml:23` | `pip install pandas` without version pin. |
|
|
37
|
+
| 15 | `.github/workflows/test.yml` vs `deploy-site.yml` | `node-version` quoting inconsistent (string vs integer). |
|
|
38
|
+
| 16 | `hooks/lexis-two-config.js:1` | Shebang on module that is only `require()`'d, never run directly. |
|
|
39
|
+
| 17 | `plugins/` and `modes/` | Empty directories, unreferenced anywhere. |
|
|
40
|
+
| 18 | `assets/lexis-two-complete.webp` + `social-preview.png` | Unreferenced files. |
|
|
41
|
+
| 19 | `README.md:22` | Subtitle says "Lexis-Two-specific runs pending" but benchmarks exist. |
|
|
42
|
+
| 20 | `README.md:160` | `my-skills` in README vs `my-cursor-skills` in marketplace.json. |
|
|
43
|
+
| 21 | `scripts/check-rule-copies.js` | No unit test for the script itself. |
|
|
44
|
+
|
|
45
|
+
---
|
|
46
|
+
|
|
47
|
+
## Verified OK
|
|
48
|
+
|
|
49
|
+
- 36 root tests + 2 pi-extension tests pass
|
|
50
|
+
- Site build: 4 pages, sitemap + robots.txt generated
|
|
51
|
+
- Chart.js lazy-loaded via IntersectionObserver
|
|
52
|
+
- Structured data (JSON-LD) in Layout
|
|
53
|
+
- Skip link i18n working
|
|
54
|
+
- License MIT correct (includes Ponytail attribution)
|
|
55
|
+
- `.env` not tracked in git
|
|
56
|
+
- No hardcoded secrets
|
|
57
|
+
- Hooks degrade gracefully (except copilot-hooks.json — HIGH #3)
|
|
58
|
+
- `check-rule-copies.js` validates 5 rule copies match AGENTS.md
|
|
59
|
+
- `focus-visible` styles present
|
|
60
|
+
- `--text-muted` contrast passes WCAG AA (5.2:1)
|
|
61
|
+
|
|
62
|
+
---
|
|
63
|
+
|
|
64
|
+
## Actions Taken in This Session
|
|
65
|
+
|
|
66
|
+
1. **Version unified to `1.0.0`** across `package.json`, `gemini-extension.json`, `.claude-plugin/plugin.json`, `.codex-plugin/plugin.json`, `.github/plugin/plugin.json`, `site/package.json`.
|
|
67
|
+
2. **`.codex-plugin` paths fixed** — `skills` and asset references point to `../`.
|
|
68
|
+
3. **Test updated** — `gemini-extension.test.js` now also validates `package.json` version consistency.
|
|
69
|
+
4. **Spanish translation fixed** — tildes, interrogaciones de apertura, skip link i18n, "Copied" feedback.
|
|
70
|
+
5. **Accessibility** — `focus-visible` global, `--text-muted` contrast, heading hierarchy.
|
|
71
|
+
6. **Dead code removed** — `BenchmarkPage.astro` deleted (253 lines).
|
|
72
|
+
7. **Chart.js lazy-loaded** — IntersectionObserver on `#benchmarks`, 200KB off main thread.
|
|
73
|
+
8. **SEO** — `@astrojs/sitemap`, `robots.txt`, JSON-LD `SoftwareApplication`, `meta robots` + `author`.
|
|
74
|
+
9. **Language switcher** — Pill button with globe SVG icon, aria-labels, scoped CSS.
|
package/CNAME
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
lexis-two.excelso.xyz
|
package/LICENSE
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Agustin Avellaneda
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
|
23
|
+
Based on Ponytail, Copyright (c) 2022 DietrichGebert
|
package/README.md
ADDED
|
@@ -0,0 +1,301 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<picture>
|
|
3
|
+
<!-- <source media="(prefers-color-scheme: dark)" srcset="assets/logo-dark.png"> -->
|
|
4
|
+
<img src="assets/logo.png" width="220" alt="Lexis-two">
|
|
5
|
+
</picture>
|
|
6
|
+
</p>
|
|
7
|
+
|
|
8
|
+
<h1 align="center">Lexis-two</h1>
|
|
9
|
+
|
|
10
|
+
<p align="center">
|
|
11
|
+
<em>The simple way to obtain the best code.</em><br>
|
|
12
|
+
<small>Portable rules, skills, and slash commands for AI agents. The simple way to get the best code. With lowest tokens usage.</small>
|
|
13
|
+
</p>
|
|
14
|
+
|
|
15
|
+
<p align="center">
|
|
16
|
+
<img src="https://img.shields.io/github/stars/nitdraig/lexis-two?style=flat-square&color=111111&label=stars" alt="Stars">
|
|
17
|
+
<img src="https://img.shields.io/github/v/release/nitdraig/lexis-two?style=flat-square&color=111111&label=release" alt="Release">
|
|
18
|
+
<img src="https://img.shields.io/badge/license-MIT-111111?style=flat-square" alt="MIT license">
|
|
19
|
+
</p>
|
|
20
|
+
|
|
21
|
+
<p align="center">
|
|
22
|
+
<sub>Benchmark harness inherited from <a href="benchmarks/">ponytail</a>; Lexis-Two-specific runs completed and published.</sub>
|
|
23
|
+
</p>
|
|
24
|
+
|
|
25
|
+
---
|
|
26
|
+
|
|
27
|
+
Built on top of [OpenCode](https://opencode.ai) and [Cursor](https://cursor.sh).
|
|
28
|
+
Forked and extended from [ponytail](https://github.com/DietrichGebert/ponytail) by DietrichGebert (MIT).
|
|
29
|
+
|
|
30
|
+
---
|
|
31
|
+
|
|
32
|
+
## What is Lexis?
|
|
33
|
+
|
|
34
|
+
Lexis is a multi-agent ecosystem designed for building premium web apps products efficiently. It enforces a simple philosophy: **the best code is the code never written**.
|
|
35
|
+
|
|
36
|
+
Rather than a single AI assistant, Lexis is a team of specialized agents — each with a defined role, model, and scope — coordinated to cover the full development lifecycle: planning, coding, refactoring, reviewing, and security auditing.
|
|
37
|
+
|
|
38
|
+
### The Agents
|
|
39
|
+
|
|
40
|
+
| Agent | Role | Scope |
|
|
41
|
+
| ------------------ | -------------------- | ------------------------------------ |
|
|
42
|
+
| `lexis-one` | Primary coding agent | Implements, edits, runs bash |
|
|
43
|
+
| `lexis-review` | Strategic reviewer | Evaluates changes, never edits |
|
|
44
|
+
| `ui-architect` | UX/UI architect | Consults on design, never implements |
|
|
45
|
+
| `refactor-agent` | Refactor specialist | Large-scale code restructuring |
|
|
46
|
+
| `security-auditor` | Security analyst | Read-only, runs audit tools |
|
|
47
|
+
| `explorer` | Codebase mapper | Read-only, fast local model |
|
|
48
|
+
|
|
49
|
+
### The Philosophy
|
|
50
|
+
|
|
51
|
+
Before writing any code, Lexis stops at the first rung that holds:
|
|
52
|
+
|
|
53
|
+
1. Does this need to exist at all? (YAGNI)
|
|
54
|
+
2. Does the standard library already do this?
|
|
55
|
+
3. Does a native platform feature cover it?
|
|
56
|
+
4. Does an already-installed dependency solve it?
|
|
57
|
+
5. Can this be one line?
|
|
58
|
+
6. Only then: write the minimum code that works.
|
|
59
|
+
|
|
60
|
+
---
|
|
61
|
+
|
|
62
|
+
## Stack
|
|
63
|
+
|
|
64
|
+
Lexis is optimized for this stack — adapt as needed for your own:
|
|
65
|
+
|
|
66
|
+
- **Frontend**: Next.js App Router, React, TypeScript strict
|
|
67
|
+
- **Backend**: Express.js / Fastify, Node.js, TypeScript
|
|
68
|
+
- **Database**: MongoDB (default) / PostgreSQL / SQLite
|
|
69
|
+
- **Cache**: Redis
|
|
70
|
+
- **Styling**: Tailwind CSS
|
|
71
|
+
- **Data fetching**: TanStack Query v5
|
|
72
|
+
- **Package Manager**: npm
|
|
73
|
+
|
|
74
|
+
---
|
|
75
|
+
|
|
76
|
+
## Installation
|
|
77
|
+
|
|
78
|
+
### OpenCode (Recommended via npm)
|
|
79
|
+
|
|
80
|
+
Add the package to your project's `opencode.json`:
|
|
81
|
+
|
|
82
|
+
```json
|
|
83
|
+
{
|
|
84
|
+
"plugin": ["@nitdraig/lexis-two"]
|
|
85
|
+
}
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
To enable the slash commands globally in any project:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
mkdir -p ~/.config/opencode/commands
|
|
92
|
+
cp .opencode/command/lexis-two*.md ~/.config/opencode/commands/
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
### OpenCode (Local development / manual)
|
|
96
|
+
|
|
97
|
+
```bash
|
|
98
|
+
# Clone the repo
|
|
99
|
+
git clone https://github.com/nitdraig/lexis-two.git ~/lexis-two
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Add to your `opencode.json`:
|
|
103
|
+
|
|
104
|
+
```json
|
|
105
|
+
{
|
|
106
|
+
"plugin": ["~/lexis-two/.opencode/plugins/lexis-two.mjs"],
|
|
107
|
+
"instructions": ["~/lexis-two/AGENTS.md"]
|
|
108
|
+
}
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
### Cursor
|
|
112
|
+
|
|
113
|
+
```bash
|
|
114
|
+
# Copy rules to your project or global Cursor config
|
|
115
|
+
cp ~/lexis-two/.cursor/rules/lexis-two.mdc .cursor/rules/lexis-two.mdc
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
Or globally:
|
|
119
|
+
|
|
120
|
+
```bash
|
|
121
|
+
cp ~/lexis-two/.cursor/rules/lexis-two.mdc ~/.cursor/rules/lexis-two.mdc
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
More hosts (Windsurf, Gemini CLI, pi, Copilot): see [docs/portability.md](./docs/portability.md).
|
|
125
|
+
|
|
126
|
+
**Site:** [lexis-two.excelso.xyz](https://lexis-two.excelso.xyz) (GitHub Pages — [setup guide](./docs/site.md)).
|
|
127
|
+
|
|
128
|
+
---
|
|
129
|
+
|
|
130
|
+
## Commands
|
|
131
|
+
|
|
132
|
+
Once installed, these slash commands are available in OpenCode:
|
|
133
|
+
|
|
134
|
+
| Command | What it does |
|
|
135
|
+
| --------------------- | --------------------------------------------------------------------- |
|
|
136
|
+
| `/lexis-two-review` | Reviews recent changes against AGENTS.md rules |
|
|
137
|
+
| `/lexis-two-audit` | Full codebase audit — over-engineering, deps, structure |
|
|
138
|
+
| `/lexis-two-debt` | Surfaces all `// lexis:` comments as prioritized debt list |
|
|
139
|
+
| `/lexis-two-plan` | Plans a feature using the minimalist decision hierarchy before coding |
|
|
140
|
+
| `/lexis-two-security` | Security audit focused on your stack (Node.js, MongoDB, Next.js) |
|
|
141
|
+
|
|
142
|
+
---
|
|
143
|
+
|
|
144
|
+
## Modes
|
|
145
|
+
|
|
146
|
+
Switch working mode with `/mode <name>` in OpenCode:
|
|
147
|
+
|
|
148
|
+
| Mode | Focus | Best for |
|
|
149
|
+
| ------------ | ------------------------------ | ---------------------- |
|
|
150
|
+
| `build` | Minimum viable implementation | Day-to-day coding |
|
|
151
|
+
| `plan` | Analysis before implementation | Complex features |
|
|
152
|
+
| `review` | Evaluate, no edits | Before committing |
|
|
153
|
+
| `debug` | Trace issues, no edits | Investigating bugs |
|
|
154
|
+
| `docs` | JSDoc, README, comments | Documentation sprints |
|
|
155
|
+
| `brainstorm` | Ideas and trade-offs | Architecture decisions |
|
|
156
|
+
|
|
157
|
+
---
|
|
158
|
+
|
|
159
|
+
## The `lexis:` Comment Tag
|
|
160
|
+
|
|
161
|
+
Lexis marks intentional simplifications with inline comments:
|
|
162
|
+
|
|
163
|
+
```typescript
|
|
164
|
+
// lexis: using native <dialog> instead of modal library — no dep needed
|
|
165
|
+
// lexis: skipping abstraction — only used once, extract if needed in v2
|
|
166
|
+
// lexis: tech debt — revisit when auth module is stable
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
Run `/lexis-two-debt` to collect and prioritize all tagged items across the codebase.
|
|
170
|
+
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
## Complementary Repos
|
|
174
|
+
|
|
175
|
+
| Repo | What it adds |
|
|
176
|
+
| -------------------------------------------------- | ------------------------------------------------------------------- |
|
|
177
|
+
| [my-cursor-skills](https://github.com/nitdraig/my-cursor-skills) | OpenCode/Cursor skills: code review, testing, security, performance |
|
|
178
|
+
|
|
179
|
+
---
|
|
180
|
+
|
|
181
|
+
## Roadmap
|
|
182
|
+
|
|
183
|
+
### Component Relationship
|
|
184
|
+
|
|
185
|
+
```
|
|
186
|
+
Lexis-One (private) ──extracts the best──▶ Lexis-Two (public)
|
|
187
|
+
│ │
|
|
188
|
+
│ personal configuration │ portable ecosystem
|
|
189
|
+
│ specific prompts & flow │ generalized rules
|
|
190
|
+
│ providers & API keys │ skills & commands
|
|
191
|
+
│ private working style │ multi-host adapters
|
|
192
|
+
└───────────────────────────────────────────┘
|
|
193
|
+
│
|
|
194
|
+
Lexis-Core (future)
|
|
195
|
+
public orchestrator
|
|
196
|
+
```
|
|
197
|
+
|
|
198
|
+
---
|
|
199
|
+
|
|
200
|
+
### v0.1 — Foundation ✅
|
|
201
|
+
|
|
202
|
+
Core portable ecosystem.
|
|
203
|
+
|
|
204
|
+
- [x] `AGENTS.md` — ecosystem rules and minimalist decision hierarchy
|
|
205
|
+
- [x] OpenCode plugin (`lexis-two.mjs`) with lite / full / ultra modes
|
|
206
|
+
- [x] Commands: `lexis-two-review`, `lexis-two-audit`, `lexis-two-debt`, `lexis-two-plan`, `lexis-two-security`
|
|
207
|
+
- [x] Portable skills for all hosts
|
|
208
|
+
- [x] Adapters: Cursor, Windsurf, Cline, Kiro, Gemini CLI, OpenCode; Copilot repo rules (`.github/copilot-instructions.md`)
|
|
209
|
+
- [x] MIT license with ponytail attribution
|
|
210
|
+
|
|
211
|
+
---
|
|
212
|
+
|
|
213
|
+
### v0.2 — Developer Experience
|
|
214
|
+
|
|
215
|
+
Make it easy to adopt Lexis in any new project.
|
|
216
|
+
|
|
217
|
+
- [ ] `AGENTS.template.md` — project-level AGENTS.md template with commented sections (stack, design tokens, glossary, conventions)
|
|
218
|
+
- [x] `docs/portability.md` — hosts, commands, skills, install paths
|
|
219
|
+
- [x] `docs/site.md` — GitHub Pages + `lexis-two.excelso.xyz`
|
|
220
|
+
- [ ] `docs/setup.md` — detailed installation guide per host
|
|
221
|
+
- [ ] `docs/modes.md` — when to use lite / full / ultra and how to create custom modes
|
|
222
|
+
- [ ] `npx lexis-two install` — setup script that detects the host (cursor, windsurf, opencode…) and copies the right files
|
|
223
|
+
- [ ] README improvements with real `// lexis:` comment examples showing before/after simplifications
|
|
224
|
+
|
|
225
|
+
---
|
|
226
|
+
|
|
227
|
+
### v0.3 — Multi-host Maturity
|
|
228
|
+
|
|
229
|
+
Full, verified support across all major hosts.
|
|
230
|
+
|
|
231
|
+
- [x] Claude Code adapter (`.claude-plugin/` + `hooks/`) — scaffold in repo
|
|
232
|
+
- [x] GitHub Copilot IDE plugin (`.github/plugin/`) — scaffold in repo
|
|
233
|
+
- [x] Codex adapter (`.codex-plugin/plugin.json` + `hooks/hooks.json`)
|
|
234
|
+
- [x] pi adapter (`pi-extension/`)
|
|
235
|
+
- [x] Verified skills working in Gemini CLI, Codex, and pi
|
|
236
|
+
- [x] `examples/` — real before/after cases with `// lexis:` comments across the stack (Next.js, Express, MongoDB, PostgreSQL)
|
|
237
|
+
- [ ] `docs/contributing.md` — how to add a new adapter or skill
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
### v0.4 — Lexis-Core (Public Orchestrator)
|
|
242
|
+
|
|
243
|
+
The public orchestrator — a generalized pattern extracted from the private Lexis-One ecosystem.
|
|
244
|
+
|
|
245
|
+
- [ ] Public documentation of the multi-agent role architecture (without exposing private config)
|
|
246
|
+
- [ ] Guide: how to build a multi-agent ecosystem using Lexis-Two as the base
|
|
247
|
+
- [ ] `lexis-core` as a reference agent in the docs — prompts and patterns, not private implementation
|
|
248
|
+
- [ ] Guide: "How to build your own private Lexis-One on top of Lexis-Two"
|
|
249
|
+
- [ ] `opencode.json` template with the full agent ecosystem (no keys, placeholders only)
|
|
250
|
+
|
|
251
|
+
---
|
|
252
|
+
|
|
253
|
+
### v0.5 — Specxis (Spec-Driven Development)
|
|
254
|
+
|
|
255
|
+
Lightweight SDD layer for complex features — inspired by OpenSpec and Spec Kit,
|
|
256
|
+
built for the Lexis philosophy.
|
|
257
|
+
|
|
258
|
+
- [ ] `.specxis/` folder convention documented
|
|
259
|
+
- [ ] Commands: specxis-new, specxis-plan, specxis-implement, specxis-review, specxis-close, specxis-debt
|
|
260
|
+
- [ ] Skills: specxis, specxis-plan, specxis-review, specxis-close
|
|
261
|
+
- [ ] `scripts/specxis-init.js` — creates .specxis/ structure in any project
|
|
262
|
+
- [ ] `templates/specxis/` — proposal, spec, and tasks templates
|
|
263
|
+
- [ ] `docs/specxis.md` — when to use SDD vs direct implementation
|
|
264
|
+
- [ ] Integration guide for Lexis-One private config
|
|
265
|
+
|
|
266
|
+
---
|
|
267
|
+
|
|
268
|
+
### v1.0 — Community & Growth
|
|
269
|
+
|
|
270
|
+
When the ecosystem is stable and has adoption.
|
|
271
|
+
|
|
272
|
+
- [ ] GitHub Actions CI: validates that adapters stay in sync when `AGENTS.md` changes
|
|
273
|
+
- [ ] Strict semantic versioning + automated changelog
|
|
274
|
+
- [ ] Community-verified skill registry
|
|
275
|
+
- [ ] Migration guides between versions
|
|
276
|
+
|
|
277
|
+
---
|
|
278
|
+
|
|
279
|
+
### Future — Lexis Platform
|
|
280
|
+
|
|
281
|
+
The commercial evolution. Defined once v1.0 has traction.
|
|
282
|
+
|
|
283
|
+
- [ ] Web app to configure your Lexis ecosystem visually
|
|
284
|
+
- [ ] Skill and adapter marketplace
|
|
285
|
+
- [ ] Lexis-One as a Service — your private configuration in the cloud
|
|
286
|
+
- [ ] Public Lexis-Core API for integration into any workflow
|
|
287
|
+
|
|
288
|
+
## Contributing
|
|
289
|
+
|
|
290
|
+
Contributions welcome. Before opening a PR, read `AGENTS.md` — it applies here too.
|
|
291
|
+
|
|
292
|
+
Focus areas: stack-specific shortcuts for other tech stacks, new modes, additional commands.
|
|
293
|
+
|
|
294
|
+
---
|
|
295
|
+
|
|
296
|
+
## License
|
|
297
|
+
|
|
298
|
+
MIT — see [LICENSE](./LICENSE).
|
|
299
|
+
|
|
300
|
+
Original ponytail concept by [DietrichGebert](https://github.com/DietrichGebert/ponytail).
|
|
301
|
+
Lexis ecosystem by [@nitdraig](https://github.com/nitdraig).
|