gulutux 0.2.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.
- gulutux-0.2.4/PKG-INFO +90 -0
- gulutux-0.2.4/README.md +79 -0
- gulutux-0.2.4/gulutux/__init__.py +1 -0
- gulutux-0.2.4/gulutux/launcher.py +57 -0
- gulutux-0.2.4/gulutux.egg-info/PKG-INFO +90 -0
- gulutux-0.2.4/gulutux.egg-info/SOURCES.txt +9 -0
- gulutux-0.2.4/gulutux.egg-info/dependency_links.txt +1 -0
- gulutux-0.2.4/gulutux.egg-info/entry_points.txt +3 -0
- gulutux-0.2.4/gulutux.egg-info/top_level.txt +1 -0
- gulutux-0.2.4/pyproject.toml +23 -0
- gulutux-0.2.4/setup.cfg +4 -0
gulutux-0.2.4/PKG-INFO
ADDED
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: gulutux
|
|
3
|
+
Version: 0.2.4
|
|
4
|
+
Summary: Multi-provider agentic coding CLI β swap the brain (Nebius Token Factory, Cloudflare, Google, any OpenAI-compatible), keep the fox.
|
|
5
|
+
License: MIT
|
|
6
|
+
Project-URL: Homepage, https://github.com/autokeren/gulutux
|
|
7
|
+
Project-URL: Repository, https://github.com/autokeren/gulutux
|
|
8
|
+
Keywords: ai,agent,cli,coding,nemotron,nebius,llm
|
|
9
|
+
Requires-Python: >=3.8
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
|
|
12
|
+
# π¦ gulutux
|
|
13
|
+
|
|
14
|
+
**Multi-provider agentic coding CLI.** Swap the brain β Nebius Token Factory,
|
|
15
|
+
Cloudflare Workers AI, Google, or any OpenAI-compatible endpoint β keep the fox.
|
|
16
|
+
|
|
17
|
+
> Named after my childhood nickname. Gulutux writes the code, its ghost agents
|
|
18
|
+
> run in parallel, and Ghostfox β the stealth browser β sees the web.
|
|
19
|
+
|
|
20
|
+
## What it is
|
|
21
|
+
|
|
22
|
+
gulutux is a terminal-native agentic coding assistant built in Go:
|
|
23
|
+
|
|
24
|
+
- **Multi-provider model layer** β one agent loop, any brain: Nebius Token
|
|
25
|
+
Factory (NVIDIA Nemotron), Cloudflare Workers AI, Google AI Studio, OpenAI,
|
|
26
|
+
or any OpenAI-compatible endpoint (Ollama, vLLM, proxies).
|
|
27
|
+
- **Token Factory Sandboxes execution** β commands run in ephemeral Nebius
|
|
28
|
+
microVM containers (`sandbox` tool: one-shot runs or named sessions), with
|
|
29
|
+
automatic sandboxβlocal fallback.
|
|
30
|
+
- **Cost-aware routing** β per-model pricing table, live token/USD metering
|
|
31
|
+
from real API usage, and a session budget guard that downshifts to a fast
|
|
32
|
+
model when the budget is reached.
|
|
33
|
+
- **Ghost agents** β spawn parallel sub-agents (`spawn_agent`) with
|
|
34
|
+
capability-scoped tool allowlists and structured result mailboxes.
|
|
35
|
+
- **Evidence-led proofs** β acceptance criteria, recorded verification, and a
|
|
36
|
+
`SHIP / BLOCKED / NEEDS_HUMAN_REVIEW` verdict gated by human approval.
|
|
37
|
+
Deploy tools are blocked at the registry level until a proof is approved for
|
|
38
|
+
the exact git commit.
|
|
39
|
+
- **Real browsers at its side** β a generic Chrome (CDP) layer and **Ghostfox**,
|
|
40
|
+
a stealth browser driven through its MCP server: navigate, snapshot, click,
|
|
41
|
+
type, screenshot with anti-detection identities.
|
|
42
|
+
- **Tavily web search** built in for grounded, real-time research.
|
|
43
|
+
- **Checkpoints (time travel)**, per-project persistent memory, SQLite kanban,
|
|
44
|
+
and a vibe-security guard over shell/file tools.
|
|
45
|
+
|
|
46
|
+
## Build & run
|
|
47
|
+
|
|
48
|
+
Requires Go 1.22+.
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
make build # produces ./gx
|
|
52
|
+
./gx # interactive TUI
|
|
53
|
+
./gx "explain this repo" --task # one-shot task
|
|
54
|
+
./gx --proof replay examples/proof-demo/proof-run.json # replay a proof, zero API keys
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Configure providers in `~/.config/gulutux/config.yaml` (see
|
|
58
|
+
`config.example.yaml`). Environment: `GULUTUX_*` (e.g. `GULUTUX_API_KEY`).
|
|
59
|
+
|
|
60
|
+
**Live demo:** https://gulutux.autokeren.com β this landing page was built,
|
|
61
|
+
rendered, and proof-verified **by the agent itself** in the demo video.
|
|
62
|
+
|
|
63
|
+
## Status
|
|
64
|
+
|
|
65
|
+
**v0.1.x** β foundation + Nebius stack verified live. All 24 Go packages pass
|
|
66
|
+
vet + tests. Verified end-to-end with NVIDIA Nemotron on Nebius Token Factory:
|
|
67
|
+
|
|
68
|
+
- agent thinking with `nvidia/nemotron-3-super-120b-a12b` (with automatic
|
|
69
|
+
downshift to `Nemotron-3_5-Lightning` when a session budget is exceeded)
|
|
70
|
+
- Token Factory Sandboxes client (Contree API): spawn instances, subprocesses
|
|
71
|
+
inside running VMs, one-shot runs, named sessions
|
|
72
|
+
- live dogfood run: the agent researched landing-page design via Tavily,
|
|
73
|
+
wrote a page, rendered it in the Ghostfox stealth browser, and issued a
|
|
74
|
+
`SHIP` proof β 13 turns, $0.08 of model spend
|
|
75
|
+
|
|
76
|
+
## Origin & license
|
|
77
|
+
|
|
78
|
+
MIT Β© 2026 Ajat Sudrajat.
|
|
79
|
+
|
|
80
|
+
gulutux is the successor of my prior open-source project
|
|
81
|
+
[autokeren](https://github.com/autokeren/autokeren) (MIT) β a Cloudflare-first
|
|
82
|
+
agentic CLI. The Go engine core, tool suite, ghost sub-agent manager, and
|
|
83
|
+
evidence-led proof system were carried over and are being significantly
|
|
84
|
+
extended for this project: a rewritten multi-provider architecture, native
|
|
85
|
+
Nebius Token Factory integration (inference + sandboxes), Ghostfox browser
|
|
86
|
+
integration, and a structured agent state machine. The prior project is
|
|
87
|
+
disclosed here explicitly, in the spirit of honest open source.
|
|
88
|
+
|
|
89
|
+
Built during the **Nebius x NVIDIA Global AI Hackathon** β running on
|
|
90
|
+
Nebius AI Cloud, thinking with NVIDIA Nemotron.
|
gulutux-0.2.4/README.md
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# π¦ gulutux
|
|
2
|
+
|
|
3
|
+
**Multi-provider agentic coding CLI.** Swap the brain β Nebius Token Factory,
|
|
4
|
+
Cloudflare Workers AI, Google, or any OpenAI-compatible endpoint β keep the fox.
|
|
5
|
+
|
|
6
|
+
> Named after my childhood nickname. Gulutux writes the code, its ghost agents
|
|
7
|
+
> run in parallel, and Ghostfox β the stealth browser β sees the web.
|
|
8
|
+
|
|
9
|
+
## What it is
|
|
10
|
+
|
|
11
|
+
gulutux is a terminal-native agentic coding assistant built in Go:
|
|
12
|
+
|
|
13
|
+
- **Multi-provider model layer** β one agent loop, any brain: Nebius Token
|
|
14
|
+
Factory (NVIDIA Nemotron), Cloudflare Workers AI, Google AI Studio, OpenAI,
|
|
15
|
+
or any OpenAI-compatible endpoint (Ollama, vLLM, proxies).
|
|
16
|
+
- **Token Factory Sandboxes execution** β commands run in ephemeral Nebius
|
|
17
|
+
microVM containers (`sandbox` tool: one-shot runs or named sessions), with
|
|
18
|
+
automatic sandboxβlocal fallback.
|
|
19
|
+
- **Cost-aware routing** β per-model pricing table, live token/USD metering
|
|
20
|
+
from real API usage, and a session budget guard that downshifts to a fast
|
|
21
|
+
model when the budget is reached.
|
|
22
|
+
- **Ghost agents** β spawn parallel sub-agents (`spawn_agent`) with
|
|
23
|
+
capability-scoped tool allowlists and structured result mailboxes.
|
|
24
|
+
- **Evidence-led proofs** β acceptance criteria, recorded verification, and a
|
|
25
|
+
`SHIP / BLOCKED / NEEDS_HUMAN_REVIEW` verdict gated by human approval.
|
|
26
|
+
Deploy tools are blocked at the registry level until a proof is approved for
|
|
27
|
+
the exact git commit.
|
|
28
|
+
- **Real browsers at its side** β a generic Chrome (CDP) layer and **Ghostfox**,
|
|
29
|
+
a stealth browser driven through its MCP server: navigate, snapshot, click,
|
|
30
|
+
type, screenshot with anti-detection identities.
|
|
31
|
+
- **Tavily web search** built in for grounded, real-time research.
|
|
32
|
+
- **Checkpoints (time travel)**, per-project persistent memory, SQLite kanban,
|
|
33
|
+
and a vibe-security guard over shell/file tools.
|
|
34
|
+
|
|
35
|
+
## Build & run
|
|
36
|
+
|
|
37
|
+
Requires Go 1.22+.
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
make build # produces ./gx
|
|
41
|
+
./gx # interactive TUI
|
|
42
|
+
./gx "explain this repo" --task # one-shot task
|
|
43
|
+
./gx --proof replay examples/proof-demo/proof-run.json # replay a proof, zero API keys
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
Configure providers in `~/.config/gulutux/config.yaml` (see
|
|
47
|
+
`config.example.yaml`). Environment: `GULUTUX_*` (e.g. `GULUTUX_API_KEY`).
|
|
48
|
+
|
|
49
|
+
**Live demo:** https://gulutux.autokeren.com β this landing page was built,
|
|
50
|
+
rendered, and proof-verified **by the agent itself** in the demo video.
|
|
51
|
+
|
|
52
|
+
## Status
|
|
53
|
+
|
|
54
|
+
**v0.1.x** β foundation + Nebius stack verified live. All 24 Go packages pass
|
|
55
|
+
vet + tests. Verified end-to-end with NVIDIA Nemotron on Nebius Token Factory:
|
|
56
|
+
|
|
57
|
+
- agent thinking with `nvidia/nemotron-3-super-120b-a12b` (with automatic
|
|
58
|
+
downshift to `Nemotron-3_5-Lightning` when a session budget is exceeded)
|
|
59
|
+
- Token Factory Sandboxes client (Contree API): spawn instances, subprocesses
|
|
60
|
+
inside running VMs, one-shot runs, named sessions
|
|
61
|
+
- live dogfood run: the agent researched landing-page design via Tavily,
|
|
62
|
+
wrote a page, rendered it in the Ghostfox stealth browser, and issued a
|
|
63
|
+
`SHIP` proof β 13 turns, $0.08 of model spend
|
|
64
|
+
|
|
65
|
+
## Origin & license
|
|
66
|
+
|
|
67
|
+
MIT Β© 2026 Ajat Sudrajat.
|
|
68
|
+
|
|
69
|
+
gulutux is the successor of my prior open-source project
|
|
70
|
+
[autokeren](https://github.com/autokeren/autokeren) (MIT) β a Cloudflare-first
|
|
71
|
+
agentic CLI. The Go engine core, tool suite, ghost sub-agent manager, and
|
|
72
|
+
evidence-led proof system were carried over and are being significantly
|
|
73
|
+
extended for this project: a rewritten multi-provider architecture, native
|
|
74
|
+
Nebius Token Factory integration (inference + sandboxes), Ghostfox browser
|
|
75
|
+
integration, and a structured agent state machine. The prior project is
|
|
76
|
+
disclosed here explicitly, in the spirit of honest open source.
|
|
77
|
+
|
|
78
|
+
Built during the **Nebius x NVIDIA Global AI Hackathon** β running on
|
|
79
|
+
Nebius AI Cloud, thinking with NVIDIA Nemotron.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "0.2.4"
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import os
|
|
2
|
+
import platform
|
|
3
|
+
import stat
|
|
4
|
+
import sys
|
|
5
|
+
import urllib.request
|
|
6
|
+
from pathlib import Path
|
|
7
|
+
|
|
8
|
+
RELEASE = "v0.2.4"
|
|
9
|
+
BASE = f"https://github.com/autokeren/gulutux/releases/download/{RELEASE}"
|
|
10
|
+
|
|
11
|
+
_version = f"gulutux {__import__('gulutux').__version__}"
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
def _asset_name() -> str:
|
|
15
|
+
machine = platform.machine().lower()
|
|
16
|
+
arch = {"x86_64": "amd64", "amd64": "amd64", "aarch64": "arm64", "arm64": "arm64"}.get(machine)
|
|
17
|
+
if arch is None:
|
|
18
|
+
raise SystemExit(f"gulutux: unsupported architecture: {machine}")
|
|
19
|
+
if sys.platform.startswith("darwin"):
|
|
20
|
+
return f"gx-darwin-{arch}"
|
|
21
|
+
if sys.platform.startswith("win"):
|
|
22
|
+
return f"gx-windows-{arch}.exe"
|
|
23
|
+
return f"gx-linux-{arch}"
|
|
24
|
+
|
|
25
|
+
|
|
26
|
+
def _binary_path() -> Path:
|
|
27
|
+
home = Path(os.environ.get("XDG_DATA_HOME", Path.home() / ".local" / "share"))
|
|
28
|
+
return home / "gulutux" / "gx" / RELEASE
|
|
29
|
+
|
|
30
|
+
|
|
31
|
+
def _ensure_binary() -> Path:
|
|
32
|
+
override = os.environ.get("GULUTUX_BIN_PATH")
|
|
33
|
+
if override:
|
|
34
|
+
return Path(override)
|
|
35
|
+
target = _binary_path()
|
|
36
|
+
if target.exists():
|
|
37
|
+
return target
|
|
38
|
+
name = _asset_name()
|
|
39
|
+
target.parent.mkdir(parents=True, exist_ok=True)
|
|
40
|
+
print(f"gulutux: downloading {name} from GitHub release {RELEASE}...", file=sys.stderr)
|
|
41
|
+
with urllib.request.urlopen(f"{BASE}/{name}", timeout=120) as resp:
|
|
42
|
+
data = resp.read()
|
|
43
|
+
target.write_bytes(data)
|
|
44
|
+
target.chmod(target.stat().st_mode | stat.S_IXUSR | stat.S_IXGRP | stat.S_IXOTH)
|
|
45
|
+
print(f"gulutux: installed {target}", file=sys.stderr)
|
|
46
|
+
return target
|
|
47
|
+
|
|
48
|
+
|
|
49
|
+
def main() -> None:
|
|
50
|
+
binary = _ensure_binary()
|
|
51
|
+
if not binary.exists():
|
|
52
|
+
raise SystemExit(f"gulutux: binary not found at {binary}")
|
|
53
|
+
os.execv(str(binary), [str(binary), *sys.argv[1:]])
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
if __name__ == "__main__":
|
|
57
|
+
main()
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: gulutux
|
|
3
|
+
Version: 0.2.4
|
|
4
|
+
Summary: Multi-provider agentic coding CLI β swap the brain (Nebius Token Factory, Cloudflare, Google, any OpenAI-compatible), keep the fox.
|
|
5
|
+
License: MIT
|
|
6
|
+
Project-URL: Homepage, https://github.com/autokeren/gulutux
|
|
7
|
+
Project-URL: Repository, https://github.com/autokeren/gulutux
|
|
8
|
+
Keywords: ai,agent,cli,coding,nemotron,nebius,llm
|
|
9
|
+
Requires-Python: >=3.8
|
|
10
|
+
Description-Content-Type: text/markdown
|
|
11
|
+
|
|
12
|
+
# π¦ gulutux
|
|
13
|
+
|
|
14
|
+
**Multi-provider agentic coding CLI.** Swap the brain β Nebius Token Factory,
|
|
15
|
+
Cloudflare Workers AI, Google, or any OpenAI-compatible endpoint β keep the fox.
|
|
16
|
+
|
|
17
|
+
> Named after my childhood nickname. Gulutux writes the code, its ghost agents
|
|
18
|
+
> run in parallel, and Ghostfox β the stealth browser β sees the web.
|
|
19
|
+
|
|
20
|
+
## What it is
|
|
21
|
+
|
|
22
|
+
gulutux is a terminal-native agentic coding assistant built in Go:
|
|
23
|
+
|
|
24
|
+
- **Multi-provider model layer** β one agent loop, any brain: Nebius Token
|
|
25
|
+
Factory (NVIDIA Nemotron), Cloudflare Workers AI, Google AI Studio, OpenAI,
|
|
26
|
+
or any OpenAI-compatible endpoint (Ollama, vLLM, proxies).
|
|
27
|
+
- **Token Factory Sandboxes execution** β commands run in ephemeral Nebius
|
|
28
|
+
microVM containers (`sandbox` tool: one-shot runs or named sessions), with
|
|
29
|
+
automatic sandboxβlocal fallback.
|
|
30
|
+
- **Cost-aware routing** β per-model pricing table, live token/USD metering
|
|
31
|
+
from real API usage, and a session budget guard that downshifts to a fast
|
|
32
|
+
model when the budget is reached.
|
|
33
|
+
- **Ghost agents** β spawn parallel sub-agents (`spawn_agent`) with
|
|
34
|
+
capability-scoped tool allowlists and structured result mailboxes.
|
|
35
|
+
- **Evidence-led proofs** β acceptance criteria, recorded verification, and a
|
|
36
|
+
`SHIP / BLOCKED / NEEDS_HUMAN_REVIEW` verdict gated by human approval.
|
|
37
|
+
Deploy tools are blocked at the registry level until a proof is approved for
|
|
38
|
+
the exact git commit.
|
|
39
|
+
- **Real browsers at its side** β a generic Chrome (CDP) layer and **Ghostfox**,
|
|
40
|
+
a stealth browser driven through its MCP server: navigate, snapshot, click,
|
|
41
|
+
type, screenshot with anti-detection identities.
|
|
42
|
+
- **Tavily web search** built in for grounded, real-time research.
|
|
43
|
+
- **Checkpoints (time travel)**, per-project persistent memory, SQLite kanban,
|
|
44
|
+
and a vibe-security guard over shell/file tools.
|
|
45
|
+
|
|
46
|
+
## Build & run
|
|
47
|
+
|
|
48
|
+
Requires Go 1.22+.
|
|
49
|
+
|
|
50
|
+
```bash
|
|
51
|
+
make build # produces ./gx
|
|
52
|
+
./gx # interactive TUI
|
|
53
|
+
./gx "explain this repo" --task # one-shot task
|
|
54
|
+
./gx --proof replay examples/proof-demo/proof-run.json # replay a proof, zero API keys
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
Configure providers in `~/.config/gulutux/config.yaml` (see
|
|
58
|
+
`config.example.yaml`). Environment: `GULUTUX_*` (e.g. `GULUTUX_API_KEY`).
|
|
59
|
+
|
|
60
|
+
**Live demo:** https://gulutux.autokeren.com β this landing page was built,
|
|
61
|
+
rendered, and proof-verified **by the agent itself** in the demo video.
|
|
62
|
+
|
|
63
|
+
## Status
|
|
64
|
+
|
|
65
|
+
**v0.1.x** β foundation + Nebius stack verified live. All 24 Go packages pass
|
|
66
|
+
vet + tests. Verified end-to-end with NVIDIA Nemotron on Nebius Token Factory:
|
|
67
|
+
|
|
68
|
+
- agent thinking with `nvidia/nemotron-3-super-120b-a12b` (with automatic
|
|
69
|
+
downshift to `Nemotron-3_5-Lightning` when a session budget is exceeded)
|
|
70
|
+
- Token Factory Sandboxes client (Contree API): spawn instances, subprocesses
|
|
71
|
+
inside running VMs, one-shot runs, named sessions
|
|
72
|
+
- live dogfood run: the agent researched landing-page design via Tavily,
|
|
73
|
+
wrote a page, rendered it in the Ghostfox stealth browser, and issued a
|
|
74
|
+
`SHIP` proof β 13 turns, $0.08 of model spend
|
|
75
|
+
|
|
76
|
+
## Origin & license
|
|
77
|
+
|
|
78
|
+
MIT Β© 2026 Ajat Sudrajat.
|
|
79
|
+
|
|
80
|
+
gulutux is the successor of my prior open-source project
|
|
81
|
+
[autokeren](https://github.com/autokeren/autokeren) (MIT) β a Cloudflare-first
|
|
82
|
+
agentic CLI. The Go engine core, tool suite, ghost sub-agent manager, and
|
|
83
|
+
evidence-led proof system were carried over and are being significantly
|
|
84
|
+
extended for this project: a rewritten multi-provider architecture, native
|
|
85
|
+
Nebius Token Factory integration (inference + sandboxes), Ghostfox browser
|
|
86
|
+
integration, and a structured agent state machine. The prior project is
|
|
87
|
+
disclosed here explicitly, in the spirit of honest open source.
|
|
88
|
+
|
|
89
|
+
Built during the **Nebius x NVIDIA Global AI Hackathon** β running on
|
|
90
|
+
Nebius AI Cloud, thinking with NVIDIA Nemotron.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
gulutux
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
[build-system]
|
|
2
|
+
requires = ["setuptools>=61"]
|
|
3
|
+
build-backend = "setuptools.build_meta"
|
|
4
|
+
|
|
5
|
+
[project]
|
|
6
|
+
name = "gulutux"
|
|
7
|
+
version = "0.2.4"
|
|
8
|
+
description = "Multi-provider agentic coding CLI β swap the brain (Nebius Token Factory, Cloudflare, Google, any OpenAI-compatible), keep the fox."
|
|
9
|
+
readme = "README.md"
|
|
10
|
+
license = {text = "MIT"}
|
|
11
|
+
requires-python = ">=3.8"
|
|
12
|
+
keywords = ["ai", "agent", "cli", "coding", "nemotron", "nebius", "llm"]
|
|
13
|
+
|
|
14
|
+
[project.urls]
|
|
15
|
+
Homepage = "https://github.com/autokeren/gulutux"
|
|
16
|
+
Repository = "https://github.com/autokeren/gulutux"
|
|
17
|
+
|
|
18
|
+
[project.scripts]
|
|
19
|
+
gulutux = "gulutux.launcher:main"
|
|
20
|
+
gx = "gulutux.launcher:main"
|
|
21
|
+
|
|
22
|
+
[tool.setuptools]
|
|
23
|
+
packages = ["gulutux"]
|
gulutux-0.2.4/setup.cfg
ADDED