epiq 0.4.8 → 0.4.10
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/dist/index.js +53 -59
- package/dist/mcp.js +48 -54
- package/package.json +1 -1
- package/readme.md +38 -31
package/package.json
CHANGED
package/readme.md
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
# Epiq
|
|
4
4
|
|
|
5
|
-
_Distributed CLI based issue tracker TUI_ backed by
|
|
5
|
+
_Distributed CLI based issue tracker TUI_ backed by Git.
|
|
6
6
|
|
|
7
7
|
Issue tracking is a part of the development lifecycle, but it often becomes a painful context switching exercise with poor ergonomics. `Epiq` provides issue tracking as a portable, integrated part of the development environment, with access to all the powerful tooling developers are used to. Epiq allows you to manage all your projects directly via the command line in a visual kanban board and edit content in your favorite editor.
|
|
8
8
|
|
|
@@ -24,17 +24,17 @@ Epiq is a vim-inspired issue tracker fully integrated in the terminal that bring
|
|
|
24
24
|
|
|
25
25
|
Epiq renders your issue board directly in the terminal using ASCII and stores its state as an event log, versioned and synchronized through Git.
|
|
26
26
|
|
|
27
|
-

|
|
28
|
+

|
|
29
29
|
|
|
30
30
|
## Features
|
|
31
31
|
|
|
32
32
|
- Issue tracking — track work in tickets with name, description, tags, assignees, history log, etc.
|
|
33
|
-
- Ergonomics — fast keyboard-driven
|
|
33
|
+
- Ergonomics — fast keyboard-driven UX, command line with history, syntax highlighting etc.
|
|
34
34
|
- Time travel — inspect your app 1h, 1 week or 1 year ago
|
|
35
35
|
- Filtering — query issues by description, tags, assignees, etc.
|
|
36
36
|
- Autocompletion — minimize typing, stay in flow
|
|
37
|
-
- Multi-user —
|
|
37
|
+
- Multi-user — collaborative synchronization via Git
|
|
38
38
|
- Traceable event log — state is a full history of every change ever made
|
|
39
39
|
|
|
40
40
|
## Why epiq?
|
|
@@ -43,7 +43,7 @@ Most issue trackers live outside your workflow. Epiq brings issue tracking into
|
|
|
43
43
|
|
|
44
44
|
These design choices result in a system that is:
|
|
45
45
|
|
|
46
|
-
- **
|
|
46
|
+
- **Simple setup** — no accounts, SaaS, or external services required
|
|
47
47
|
- **Repo-native** — your issues can live where your code lives
|
|
48
48
|
- **Offline-friendly** — works anywhere, with eventual consistency as a promise
|
|
49
49
|
- **Speed** — local first, and eventual consistency makes epiq edits instant
|
|
@@ -101,38 +101,38 @@ epiq --version
|
|
|
101
101
|
|
|
102
102
|
---
|
|
103
103
|
|
|
104
|
-
## Getting Started
|
|
104
|
+
## Getting Started in 2 steps
|
|
105
105
|
|
|
106
|
-
|
|
106
|
+
1. Make sure you're inside a Git repository
|
|
107
107
|
|
|
108
108
|
```bash
|
|
109
|
-
|
|
109
|
+
# If needed:
|
|
110
|
+
Git init
|
|
111
|
+
# For collaboration, use a repo with a remote (e.g. clone from GitHub)
|
|
110
112
|
```
|
|
111
113
|
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
This creates settings in `~/.epiq-global/**`.
|
|
115
|
-
|
|
116
|
-
If the current folder is not yet an Epiq project, you will see an initialization screen.
|
|
114
|
+
2. Run:
|
|
117
115
|
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
Create a project anchor:
|
|
121
|
-
|
|
122
|
-
```
|
|
123
|
-
.epiq/project.json
|
|
116
|
+
```bash
|
|
117
|
+
epiq
|
|
124
118
|
```
|
|
125
119
|
|
|
126
|
-
|
|
120
|
+
If it is your first run, this opens the interactive setup wizard that sets you up in about 30 seconds.
|
|
127
121
|
|
|
128
|
-
|
|
129
|
-
.epiq/events/
|
|
130
|
-
.epiq/logs/
|
|
131
|
-
```
|
|
122
|
+
That’s it!
|
|
132
123
|
|
|
133
|
-
|
|
124
|
+
> Setup wizard creates:
|
|
125
|
+
>
|
|
126
|
+
> User config persisted in `~/.epiq-global/config.json`.
|
|
134
127
|
|
|
135
|
-
>
|
|
128
|
+
> Initialization creates:
|
|
129
|
+
>
|
|
130
|
+
> - Project definition in `./.epiq/project.json`
|
|
131
|
+
> - Authoritative Git state at `~/.epiq-global/worktrees/<id>`
|
|
132
|
+
> - Local cache in `./.epiq/events/` (ignored by Git)
|
|
133
|
+
> - Update your `.Gitignore` to ignore local-only directories (`.epiq/events/`, `.epiq/logs/`)
|
|
134
|
+
|
|
135
|
+
> Epiq manages a dedicated Git state branch and worktree automatically as the source of truth for synchronization
|
|
136
136
|
|
|
137
137
|
## Usage Guide
|
|
138
138
|
|
|
@@ -180,10 +180,17 @@ Clear all filters with `:filter clear`
|
|
|
180
180
|
|
|
181
181
|
## How epiq is synchronized
|
|
182
182
|
|
|
183
|
-
Epiq
|
|
183
|
+
Epiq separates state into:
|
|
184
|
+
|
|
185
|
+
- **Source of truth** - Git state branch
|
|
186
|
+
- **Local cache** - `.epiq/events/`
|
|
187
|
+
|
|
188
|
+
Epiq uses Git in the background - no manual Git commands are required. Running `:sync` pulls and pushes changes between your local state and the remote state.
|
|
184
189
|
|
|
185
190
|
- Your issue data is stored in a dedicated branch managed automatically by epiq
|
|
186
|
-
- A `.epiq/` folder is created in your project
|
|
191
|
+
- A `.epiq/` folder is created in your project:
|
|
192
|
+
- `project.json` stores project metadata
|
|
193
|
+
- `events/` is a local cache of synchronized event logs (ignored by Git)
|
|
187
194
|
|
|
188
195
|
## Conflict Avoidance & Data Integrity
|
|
189
196
|
|
|
@@ -213,8 +220,8 @@ Epiq resolves concurrent changes at the event level:
|
|
|
213
220
|
|
|
214
221
|
- Events are designed to be **idempotent** where possible
|
|
215
222
|
- Later events take precedence when conflicts occur
|
|
216
|
-
|
|
217
|
-
|
|
223
|
+
- Each user writes to their own event log file
|
|
224
|
+
- Git merges become trivial combinations of changes in independent files
|
|
218
225
|
|
|
219
226
|
### Local-first with eventual consistency
|
|
220
227
|
|