forgexa-cli 1.0.2__tar.gz → 1.0.4__tar.gz
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.
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/PKG-INFO +68 -21
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/README.md +62 -17
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli/__init__.py +1 -1
- forgexa_cli-1.0.4/forgexa_cli/daemon.py +2964 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli/main.py +49 -22
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli.egg-info/PKG-INFO +68 -21
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli.egg-info/SOURCES.txt +2 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli.egg-info/entry_points.txt +1 -0
- forgexa_cli-1.0.4/forgexa_cli.egg-info/requires.txt +3 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/pyproject.toml +9 -5
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli/py.typed +0 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli.egg-info/dependency_links.txt +0 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/forgexa_cli.egg-info/top_level.txt +0 -0
- {forgexa_cli-1.0.2 → forgexa_cli-1.0.4}/setup.cfg +0 -0
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: forgexa-cli
|
|
3
|
-
Version: 1.0.
|
|
4
|
-
Summary: Forgexa CLI — command-line client
|
|
3
|
+
Version: 1.0.4
|
|
4
|
+
Summary: Forgexa CLI — command-line client and AI agent runtime for the Forgexa platform
|
|
5
5
|
Author-email: Shinetech <dev@shinetechsoftware.com>
|
|
6
6
|
License: MIT
|
|
7
7
|
Project-URL: Homepage, https://forgexa.net
|
|
8
8
|
Project-URL: Documentation, https://docs.forgexa.net
|
|
9
|
-
Project-URL: Repository, https://github.com/
|
|
10
|
-
Project-URL: Issues, https://github.com/
|
|
9
|
+
Project-URL: Repository, https://github.com/forgexa/forgexa
|
|
10
|
+
Project-URL: Issues, https://github.com/forgexa/forgexa/issues
|
|
11
11
|
Keywords: forgexa,ai,software-factory,cli,devops,agent
|
|
12
12
|
Classifier: Development Status :: 4 - Beta
|
|
13
13
|
Classifier: Environment :: Console
|
|
@@ -24,12 +24,15 @@ Classifier: Topic :: Software Development :: Build Tools
|
|
|
24
24
|
Classifier: Topic :: Software Development :: Quality Assurance
|
|
25
25
|
Requires-Python: >=3.9
|
|
26
26
|
Description-Content-Type: text/markdown
|
|
27
|
+
Provides-Extra: daemon
|
|
28
|
+
Requires-Dist: httpx>=0.24; extra == "daemon"
|
|
27
29
|
|
|
28
30
|
# Forgexa CLI
|
|
29
31
|
|
|
30
|
-
Command-line client for the [
|
|
32
|
+
Command-line client and agent runtime for the [Forgexa](https://forgexa.net) platform.
|
|
31
33
|
|
|
32
|
-
Lightweight
|
|
34
|
+
Lightweight — communicates with the Forgexa server via REST API using only Python stdlib.
|
|
35
|
+
Includes a built-in **daemon** that discovers local AI agents (Claude Code, Codex, Gemini CLI, OpenCode, Kimi Code, etc.) and executes tasks on behalf of the server.
|
|
33
36
|
|
|
34
37
|
## Installation
|
|
35
38
|
|
|
@@ -48,7 +51,7 @@ forgexa version
|
|
|
48
51
|
|
|
49
52
|
```bash
|
|
50
53
|
# Install from source (editable mode)
|
|
51
|
-
git clone https://github.com/
|
|
54
|
+
git clone https://github.com/forgexa/forgexa.git
|
|
52
55
|
cd ai-software-factory/cli
|
|
53
56
|
pip install -e .
|
|
54
57
|
```
|
|
@@ -60,16 +63,16 @@ pip install -e .
|
|
|
60
63
|
export FORGEXA_SERVER_URL=https://your-server.example.com
|
|
61
64
|
|
|
62
65
|
# Login (saves token to ~/.forgexa/token)
|
|
63
|
-
|
|
66
|
+
forgexa login
|
|
64
67
|
|
|
65
68
|
# List workspaces
|
|
66
|
-
|
|
69
|
+
forgexa workspace list
|
|
67
70
|
|
|
68
71
|
# List projects
|
|
69
|
-
|
|
72
|
+
forgexa project list --workspace <workspace-id>
|
|
70
73
|
|
|
71
74
|
# Show kanban board
|
|
72
|
-
|
|
75
|
+
forgexa board --project <project-id>
|
|
73
76
|
```
|
|
74
77
|
|
|
75
78
|
## Commands
|
|
@@ -94,6 +97,8 @@ asf board --project <project-id>
|
|
|
94
97
|
| `forgexa workflow show --project <id>` | Show workflow policy |
|
|
95
98
|
| `forgexa workflow reload --project <id>` | Reload workflow |
|
|
96
99
|
| `forgexa budget --workspace <id>` | Budget overview |
|
|
100
|
+
| `forgexa daemon start` | Start local daemon (discover agents, run tasks) |
|
|
101
|
+
| `forgexa daemon start -d` | Start daemon in background |
|
|
97
102
|
| `forgexa daemon status` | Show daemon statuses |
|
|
98
103
|
| `forgexa daemon stop` | Stop local daemon |
|
|
99
104
|
| `forgexa runtimes list` | List runtimes |
|
|
@@ -109,21 +114,63 @@ asf board --project <project-id>
|
|
|
109
114
|
## Output Format
|
|
110
115
|
|
|
111
116
|
```bash
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
117
|
+
forgexa workspace list # Table (default)
|
|
118
|
+
forgexa workspace list --format json # JSON
|
|
119
|
+
forgexa workspace list --format quiet # IDs only
|
|
115
120
|
```
|
|
116
121
|
|
|
117
122
|
## Daemon Management
|
|
118
123
|
|
|
119
|
-
The
|
|
120
|
-
|
|
124
|
+
The daemon discovers locally installed AI agents and registers them with the Forgexa server.
|
|
125
|
+
It then polls for tasks and executes them using your local agents.
|
|
126
|
+
|
|
127
|
+
### Start Daemon
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
# Foreground (default — see logs, Ctrl+C to stop)
|
|
131
|
+
forgexa daemon start
|
|
132
|
+
|
|
133
|
+
# Background (detached)
|
|
134
|
+
forgexa daemon start -d
|
|
135
|
+
|
|
136
|
+
# Connect to a specific server
|
|
137
|
+
forgexa daemon start --server-url https://your-server.example.com
|
|
138
|
+
|
|
139
|
+
# Or via the standalone entry point
|
|
140
|
+
forgexa-daemon
|
|
141
|
+
```
|
|
142
|
+
|
|
143
|
+
### Other Daemon Commands
|
|
121
144
|
|
|
122
145
|
```bash
|
|
123
|
-
|
|
124
|
-
forgexa
|
|
146
|
+
# Check daemon status (from server)
|
|
147
|
+
forgexa daemon status
|
|
148
|
+
|
|
149
|
+
# Stop background daemon
|
|
150
|
+
forgexa daemon stop
|
|
125
151
|
```
|
|
126
152
|
|
|
153
|
+
### Supported AI Agents
|
|
154
|
+
|
|
155
|
+
The daemon automatically discovers these agents if installed on your system:
|
|
156
|
+
|
|
157
|
+
| Agent | Command |
|
|
158
|
+
|-------|---------|
|
|
159
|
+
| Claude Code | `claude` |
|
|
160
|
+
| OpenAI Codex | `codex` |
|
|
161
|
+
| Gemini CLI | `gemini` |
|
|
162
|
+
| OpenCode | `opencode` |
|
|
163
|
+
| Kimi Code | `kimi` |
|
|
164
|
+
|
|
165
|
+
### Environment Variables (Daemon)
|
|
166
|
+
|
|
167
|
+
| Variable | Default | Description |
|
|
168
|
+
|----------|---------|-------------|
|
|
169
|
+
| `DAEMON_SERVER_URL` | `http://localhost:8000` | Server to connect to |
|
|
170
|
+
| `DAEMON_API_TOKEN` | — | Auth token (auto-read from `~/.forgexa/token`) |
|
|
171
|
+
| `DAEMON_MAX_CONCURRENT` | `5` | Max parallel tasks |
|
|
172
|
+
| `DAEMON_POLL_INTERVAL` | `3` | Poll interval (seconds) |
|
|
173
|
+
|
|
127
174
|
## Publishing to PyPI
|
|
128
175
|
|
|
129
176
|
### Prerequisites
|
|
@@ -151,11 +198,11 @@ cd cli/
|
|
|
151
198
|
|
|
152
199
|
```bash
|
|
153
200
|
# Bump version (updates pyproject.toml + __init__.py)
|
|
154
|
-
./scripts/bump-version.sh
|
|
201
|
+
./scripts/bump-version.sh 1.1.0
|
|
155
202
|
|
|
156
203
|
# Then commit, tag, and publish
|
|
157
|
-
git add -A && git commit -m "release(cli):
|
|
158
|
-
git tag cli-
|
|
204
|
+
git add -A && git commit -m "release(cli): v1.1.0"
|
|
205
|
+
git tag cli-v1.1.0
|
|
159
206
|
./scripts/publish.sh
|
|
160
207
|
```
|
|
161
208
|
|
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
# Forgexa CLI
|
|
2
2
|
|
|
3
|
-
Command-line client for the [
|
|
3
|
+
Command-line client and agent runtime for the [Forgexa](https://forgexa.net) platform.
|
|
4
4
|
|
|
5
|
-
Lightweight
|
|
5
|
+
Lightweight — communicates with the Forgexa server via REST API using only Python stdlib.
|
|
6
|
+
Includes a built-in **daemon** that discovers local AI agents (Claude Code, Codex, Gemini CLI, OpenCode, Kimi Code, etc.) and executes tasks on behalf of the server.
|
|
6
7
|
|
|
7
8
|
## Installation
|
|
8
9
|
|
|
@@ -21,7 +22,7 @@ forgexa version
|
|
|
21
22
|
|
|
22
23
|
```bash
|
|
23
24
|
# Install from source (editable mode)
|
|
24
|
-
git clone https://github.com/
|
|
25
|
+
git clone https://github.com/forgexa/forgexa.git
|
|
25
26
|
cd ai-software-factory/cli
|
|
26
27
|
pip install -e .
|
|
27
28
|
```
|
|
@@ -33,16 +34,16 @@ pip install -e .
|
|
|
33
34
|
export FORGEXA_SERVER_URL=https://your-server.example.com
|
|
34
35
|
|
|
35
36
|
# Login (saves token to ~/.forgexa/token)
|
|
36
|
-
|
|
37
|
+
forgexa login
|
|
37
38
|
|
|
38
39
|
# List workspaces
|
|
39
|
-
|
|
40
|
+
forgexa workspace list
|
|
40
41
|
|
|
41
42
|
# List projects
|
|
42
|
-
|
|
43
|
+
forgexa project list --workspace <workspace-id>
|
|
43
44
|
|
|
44
45
|
# Show kanban board
|
|
45
|
-
|
|
46
|
+
forgexa board --project <project-id>
|
|
46
47
|
```
|
|
47
48
|
|
|
48
49
|
## Commands
|
|
@@ -67,6 +68,8 @@ asf board --project <project-id>
|
|
|
67
68
|
| `forgexa workflow show --project <id>` | Show workflow policy |
|
|
68
69
|
| `forgexa workflow reload --project <id>` | Reload workflow |
|
|
69
70
|
| `forgexa budget --workspace <id>` | Budget overview |
|
|
71
|
+
| `forgexa daemon start` | Start local daemon (discover agents, run tasks) |
|
|
72
|
+
| `forgexa daemon start -d` | Start daemon in background |
|
|
70
73
|
| `forgexa daemon status` | Show daemon statuses |
|
|
71
74
|
| `forgexa daemon stop` | Stop local daemon |
|
|
72
75
|
| `forgexa runtimes list` | List runtimes |
|
|
@@ -82,21 +85,63 @@ asf board --project <project-id>
|
|
|
82
85
|
## Output Format
|
|
83
86
|
|
|
84
87
|
```bash
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
+
forgexa workspace list # Table (default)
|
|
89
|
+
forgexa workspace list --format json # JSON
|
|
90
|
+
forgexa workspace list --format quiet # IDs only
|
|
88
91
|
```
|
|
89
92
|
|
|
90
93
|
## Daemon Management
|
|
91
94
|
|
|
92
|
-
The
|
|
93
|
-
|
|
95
|
+
The daemon discovers locally installed AI agents and registers them with the Forgexa server.
|
|
96
|
+
It then polls for tasks and executes them using your local agents.
|
|
97
|
+
|
|
98
|
+
### Start Daemon
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Foreground (default — see logs, Ctrl+C to stop)
|
|
102
|
+
forgexa daemon start
|
|
103
|
+
|
|
104
|
+
# Background (detached)
|
|
105
|
+
forgexa daemon start -d
|
|
106
|
+
|
|
107
|
+
# Connect to a specific server
|
|
108
|
+
forgexa daemon start --server-url https://your-server.example.com
|
|
109
|
+
|
|
110
|
+
# Or via the standalone entry point
|
|
111
|
+
forgexa-daemon
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
### Other Daemon Commands
|
|
94
115
|
|
|
95
116
|
```bash
|
|
96
|
-
|
|
97
|
-
forgexa
|
|
117
|
+
# Check daemon status (from server)
|
|
118
|
+
forgexa daemon status
|
|
119
|
+
|
|
120
|
+
# Stop background daemon
|
|
121
|
+
forgexa daemon stop
|
|
98
122
|
```
|
|
99
123
|
|
|
124
|
+
### Supported AI Agents
|
|
125
|
+
|
|
126
|
+
The daemon automatically discovers these agents if installed on your system:
|
|
127
|
+
|
|
128
|
+
| Agent | Command |
|
|
129
|
+
|-------|---------|
|
|
130
|
+
| Claude Code | `claude` |
|
|
131
|
+
| OpenAI Codex | `codex` |
|
|
132
|
+
| Gemini CLI | `gemini` |
|
|
133
|
+
| OpenCode | `opencode` |
|
|
134
|
+
| Kimi Code | `kimi` |
|
|
135
|
+
|
|
136
|
+
### Environment Variables (Daemon)
|
|
137
|
+
|
|
138
|
+
| Variable | Default | Description |
|
|
139
|
+
|----------|---------|-------------|
|
|
140
|
+
| `DAEMON_SERVER_URL` | `http://localhost:8000` | Server to connect to |
|
|
141
|
+
| `DAEMON_API_TOKEN` | — | Auth token (auto-read from `~/.forgexa/token`) |
|
|
142
|
+
| `DAEMON_MAX_CONCURRENT` | `5` | Max parallel tasks |
|
|
143
|
+
| `DAEMON_POLL_INTERVAL` | `3` | Poll interval (seconds) |
|
|
144
|
+
|
|
100
145
|
## Publishing to PyPI
|
|
101
146
|
|
|
102
147
|
### Prerequisites
|
|
@@ -124,11 +169,11 @@ cd cli/
|
|
|
124
169
|
|
|
125
170
|
```bash
|
|
126
171
|
# Bump version (updates pyproject.toml + __init__.py)
|
|
127
|
-
./scripts/bump-version.sh
|
|
172
|
+
./scripts/bump-version.sh 1.1.0
|
|
128
173
|
|
|
129
174
|
# Then commit, tag, and publish
|
|
130
|
-
git add -A && git commit -m "release(cli):
|
|
131
|
-
git tag cli-
|
|
175
|
+
git add -A && git commit -m "release(cli): v1.1.0"
|
|
176
|
+
git tag cli-v1.1.0
|
|
132
177
|
./scripts/publish.sh
|
|
133
178
|
```
|
|
134
179
|
|
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
"""forgexa-cli — Forgexa command-line client."""
|
|
2
|
-
__version__ = "1.0.
|
|
2
|
+
__version__ = "1.0.4"
|