@diffexai/diffex 0.2.4 → 0.2.6

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 (81) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/README.md +1 -1
  3. package/dist/AGENTS.md +0 -11
  4. package/dist/core/agent-session.d.ts +0 -1
  5. package/dist/core/agent-session.js +3 -10
  6. package/dist/core/sdk.js +1 -1
  7. package/dist/core/system-prompt-production.d.ts +7 -0
  8. package/dist/core/system-prompt-production.js +102 -0
  9. package/dist/core/system-prompt.d.ts +2 -2
  10. package/dist/core/system-prompt.js +34 -35
  11. package/dist/core/tools/subagents.js +22 -9
  12. package/dist/modes/print-mode.js +12 -14
  13. package/dist/node_modules/@diffexai/diffex-agent-core/distribution-components.json +4 -4
  14. package/dist/node_modules/@diffexai/diffex-agent-core/distribution-files.json +1 -1
  15. package/dist/node_modules/@diffexai/diffex-agent-core/package.json +1 -1
  16. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/.manifest.json +1 -1
  17. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/amazon-bedrock.json +1 -1
  18. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  19. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/fireworks.json +1 -1
  20. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/mistral.json +1 -1
  21. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/nvidia.json +1 -1
  22. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/openrouter.json +1 -1
  23. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
  24. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/qwen-token-plan.json +1 -1
  25. package/dist/node_modules/@diffexai/diffex-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  26. package/dist/node_modules/@diffexai/diffex-ai/distribution-components.json +3 -3
  27. package/dist/node_modules/@diffexai/diffex-ai/distribution-files.json +11 -11
  28. package/dist/node_modules/@diffexai/diffex-ai/package.json +1 -1
  29. package/dist/node_modules/@diffexai/diffex-client/distribution-components.json +3 -3
  30. package/dist/node_modules/@diffexai/diffex-client/distribution-files.json +1 -1
  31. package/dist/node_modules/@diffexai/diffex-client/package.json +1 -1
  32. package/dist/node_modules/@diffexai/diffex-harness-state/distribution-components.json +2 -2
  33. package/dist/node_modules/@diffexai/diffex-harness-state/distribution-files.json +1 -1
  34. package/dist/node_modules/@diffexai/diffex-harness-state/package.json +1 -1
  35. package/dist/node_modules/@diffexai/diffex-protocol/distribution-components.json +2 -2
  36. package/dist/node_modules/@diffexai/diffex-protocol/distribution-files.json +1 -1
  37. package/dist/node_modules/@diffexai/diffex-protocol/package.json +1 -1
  38. package/dist/node_modules/@diffexai/diffex-telemetry/distribution-components.json +2 -2
  39. package/dist/node_modules/@diffexai/diffex-telemetry/distribution-files.json +1 -1
  40. package/dist/node_modules/@diffexai/diffex-telemetry/package.json +1 -1
  41. package/dist/node_modules/@diffexai/diffex-tui/distribution-components.json +2 -2
  42. package/dist/node_modules/@diffexai/diffex-tui/distribution-files.json +1 -1
  43. package/dist/node_modules/@diffexai/diffex-tui/package.json +1 -1
  44. package/dist/server/create-harness.js +1 -1
  45. package/distribution-components.json +11 -11
  46. package/distribution-files.json +49 -41
  47. package/npm-shrinkwrap.json +2 -2
  48. package/package.json +1 -31
  49. package/release/distribution-manifest.json +4 -4
  50. package/release/install-package-lock.json +5 -5
  51. package/release/install-package.json +2 -2
  52. package/docs/compaction.md +0 -401
  53. package/docs/containerization.md +0 -84
  54. package/docs/custom-provider.md +0 -774
  55. package/docs/environment-variables.md +0 -88
  56. package/docs/evolution.md +0 -90
  57. package/docs/extensions.md +0 -2982
  58. package/docs/images/interactive-mode.png +0 -0
  59. package/docs/images/tree-view.png +0 -0
  60. package/docs/installation.md +0 -118
  61. package/docs/json.md +0 -91
  62. package/docs/keybindings.md +0 -241
  63. package/docs/llama-cpp.md +0 -99
  64. package/docs/models.md +0 -565
  65. package/docs/packages.md +0 -232
  66. package/docs/prompt-templates.md +0 -96
  67. package/docs/providers.md +0 -317
  68. package/docs/quickstart.md +0 -161
  69. package/docs/rpc.md +0 -1647
  70. package/docs/sdk.md +0 -1332
  71. package/docs/security.md +0 -66
  72. package/docs/session-format.md +0 -438
  73. package/docs/sessions.md +0 -162
  74. package/docs/settings.md +0 -341
  75. package/docs/shell-aliases.md +0 -13
  76. package/docs/skills.md +0 -227
  77. package/docs/terminal-setup.md +0 -152
  78. package/docs/themes.md +0 -326
  79. package/docs/tmux.md +0 -63
  80. package/docs/tui.md +0 -940
  81. package/docs/usage.md +0 -434
@@ -1,161 +0,0 @@
1
- # Quickstart
2
-
3
- This page gets you from install to a useful first Diffex session.
4
-
5
- ## Install
6
-
7
- Use Node.js 22.19.0 or newer on macOS or Linux, on arm64 or x64.
8
- Install the canonical package from npmjs.org:
9
-
10
- ```bash
11
- npm install -g --ignore-scripts --registry=https://registry.npmjs.org @diffexai/diffex
12
- diffex --version
13
- ```
14
-
15
- See [Installation](installation.md) for PATH setup, pinned versions, updates, recovery, removal, and retained user data.
16
-
17
- Then start Diffex in the project directory you want it to work on:
18
-
19
- ```bash
20
- cd /path/to/project
21
- diffex
22
- ```
23
-
24
- ## Authenticate
25
-
26
- Diffex can use subscription providers through `/login`, or API-key providers through environment variables or the auth file.
27
-
28
- ### Option 1: subscription login
29
-
30
- Start Diffex and run:
31
-
32
- ```text
33
- /login
34
- ```
35
-
36
- Then select a provider. Built-in subscription logins include Claude Pro/Max, ChatGPT Plus/Pro (Codex), and GitHub Copilot.
37
-
38
- ### Option 2: API key
39
-
40
- Set an API key before launching Diffex:
41
-
42
- ```bash
43
- export ANTHROPIC_API_KEY=sk-ant-...
44
- diffex
45
- ```
46
-
47
- You can also run `/login` and select an API-key provider to store the key in `~/.diffex/agent/auth.json`.
48
-
49
- See [Providers](providers.md) for all supported providers, environment variables, and cloud-provider setup.
50
-
51
- ## First session
52
-
53
- Once Diffex starts, type a request and press Enter:
54
-
55
- ```text
56
- Summarize this repository and tell me how to run its checks.
57
- ```
58
-
59
- By default, Diffex gives the model five tools:
60
-
61
- - `read` - read files
62
- - `write` - create or overwrite files
63
- - `edit` - patch files
64
- - `bash` - run shell commands
65
- - `update_plan` - track progress with an ordered task checklist
66
-
67
- Additional built-in read-only tools (`grep`, `find`, `ls`) are available through tool options. Diffex runs in your current working directory and can modify files there. Use git or another checkpointing workflow if you want easy rollback.
68
-
69
- ## Give Diffex project instructions
70
-
71
- Diffex loads context files at startup. Add an `AGENTS.md` file to tell it how to work in a project:
72
-
73
- ```markdown
74
- # Project Instructions
75
-
76
- - Run `npm run check` after code changes.
77
- - Do not run production migrations locally.
78
- - Keep responses concise.
79
- ```
80
-
81
- Diffex loads:
82
-
83
- - `~/.diffex/agent/AGENTS.md` for global instructions
84
- - `AGENTS.md` or `CLAUDE.md` from parent directories and the current directory
85
-
86
- If a directory contains `AGENTS.override.md`, Diffex loads it instead of `AGENTS.md` or `CLAUDE.md` from that directory.
87
-
88
- Restart Diffex, or run `/reload`, after changing context files.
89
-
90
- ## Common things to try
91
-
92
- ### Reference files
93
-
94
- Type `@` in the editor to fuzzy-search files, or pass files on the command line:
95
-
96
- ```bash
97
- diffex @README.md "Summarize this"
98
- diffex @src/app.ts @src/app.test.ts "Review these together"
99
- ```
100
-
101
- Images or text can be pasted with Ctrl+V (Alt+V on Windows); images can also be dragged into supported terminals.
102
-
103
- ### Plan before implementing
104
-
105
- Press Shift+Tab or run `/plan` to enter interactive Plan mode. `/plan <request>` enters the mode and immediately submits the request. The model inspects available evidence without implementing, using only permitted trusted `read`, `grep`, `find`, and `ls` tools plus the structured `request_user_input` tool when available.
106
-
107
- Structured questions offer two or three choices and an **Other** free-form answer. Answer every question to submit, or cancel to continue the conversation in Plan mode. When choices are unsuitable or the question tool is filtered out, the model asks an ordinary question instead.
108
-
109
- A valid final plan is stored and displayed as clean Markdown. After the response settles, choose **Implement the plan** to switch to Default and submit `Implement the plan.` in the same session, or **Stay in Plan mode**. Queued messages take precedence over this offer. Plan mode persists on the selected interactive session branch across resume, fork, and `/tree` navigation; print, JSON, RPC, and SDK modes always use Default.
110
-
111
- Plan mode is separate from `update_plan`, which only tracks an execution-time progress checklist.
112
-
113
- ### Run shell commands
114
-
115
- In interactive mode:
116
-
117
- ```text
118
- !npm run lint
119
- ```
120
-
121
- The command output is sent to the model. Use `!!command` to run a command without adding its output to the model context.
122
-
123
- ### Switch models
124
-
125
- Use `/model` or Ctrl+L to choose a model, then select its thinking level when multiple levels are supported. You can select the current model to change only its thinking level. Use Ctrl+P / Shift+Ctrl+P to cycle through scoped models. Thinking-level cycling has no default shortcut; configure `app.thinking.cycle` in `keybindings.json` to enable one.
126
-
127
- ### Continue later
128
-
129
- Sessions are saved automatically:
130
-
131
- ```bash
132
- diffex -c # Continue most recent session
133
- diffex -r # Browse previous sessions
134
- diffex --name "my task" # Set session display name at startup
135
- diffex --session <path|id> # Open a specific session
136
- ```
137
-
138
- Inside Diffex, use `/resume`, `/new`, `/tree`, `/fork`, and `/clone` to manage sessions.
139
-
140
- ### Non-interactive mode
141
-
142
- For one-shot prompts:
143
-
144
- ```bash
145
- diffex -p "Summarize this codebase"
146
- cat README.md | diffex -p "Summarize this text"
147
- diffex -p @screenshot.png "What's in this image?"
148
- ```
149
-
150
- Use `--mode json` for JSON event output or `--mode rpc` for process integration.
151
-
152
- ## Next steps
153
-
154
- - [Using Diffex](usage.md) - interactive mode, slash commands, sessions, context files, and CLI reference.
155
- - [Providers](providers.md) - authentication and model setup.
156
- - [Settings](settings.md) - global and project configuration.
157
- - [Keybindings](keybindings.md) - shortcuts and customization.
158
- - [Diffex Packages](packages.md) - install shared extensions, skills, prompts, and themes.
159
-
160
- Terminal notes: [tmux](tmux.md), [Terminal setup](terminal-setup.md), [Shell aliases](shell-aliases.md).
161
- Windows and Android/Termux are not accepted release targets.