yncli 1.1.2__tar.gz → 1.1.3__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.
- {yncli-1.1.2 → yncli-1.1.3}/PKG-INFO +1 -1
- {yncli-1.1.2 → yncli-1.1.3}/pyproject.toml +1 -1
- {yncli-1.1.2 → yncli-1.1.3}/setup.py +1 -1
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tui.py +3 -1
- {yncli-1.1.2 → yncli-1.1.3}/yncli/update_checker.py +11 -1
- yncli-1.1.3/yncli/version.py +1 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/PKG-INFO +1 -1
- yncli-1.1.2/yncli/version.py +0 -1
- {yncli-1.1.2 → yncli-1.1.3}/README.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/setup.cfg +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/__init__.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/agent.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/architect.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/code_review.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/debug_oracle.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/debugger.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/polyglot.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/refactor_master.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/security_auditor.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/system_architect.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/test_runner.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/built_in_skills/ultrabrain.md +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/clean_text.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/client.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/config.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/language_detector.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/main.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/mention_resolver.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/skills_manager.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/system_prompt.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tools/__init__.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tools/file_tools.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tools/polyglot_tools.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tools/search_tools.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/tools/system_tools.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/workspace_memory.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli/workspace_scanner.py +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/SOURCES.txt +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/dependency_links.txt +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/entry_points.txt +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/requires.txt +0 -0
- {yncli-1.1.2 → yncli-1.1.3}/yncli.egg-info/top_level.txt +0 -0
|
@@ -6,7 +6,7 @@ long_description = (this_directory / "README.md").read_text(encoding="utf-8") if
|
|
|
6
6
|
|
|
7
7
|
setup(
|
|
8
8
|
name="yncli",
|
|
9
|
-
version="1.1.
|
|
9
|
+
version="1.1.3",
|
|
10
10
|
description="Autonomous Polyglot AI Coding Agent & TUI",
|
|
11
11
|
long_description=long_description,
|
|
12
12
|
long_description_content_type="text/markdown",
|
|
@@ -158,7 +158,8 @@ class TerminalUI:
|
|
|
158
158
|
if update_info:
|
|
159
159
|
update_panel = Panel(
|
|
160
160
|
f"[bold yellow]🔔 Update Tersedia:[/] [dim]v{update_info['current']}[/] → [bold green]v{update_info['latest']}[/]\n"
|
|
161
|
-
f"[dim]
|
|
161
|
+
f"[dim]Ketik [bold cyan]/update[/bold cyan] untuk memperbarui & restart otomatis, atau jalankan:[reset]\n"
|
|
162
|
+
f"• [cyan]yncli --update[/cyan] • [cyan]npm i -g @yanzyuyu/yncli[/cyan]",
|
|
162
163
|
border_style="yellow",
|
|
163
164
|
padding=(0, 2)
|
|
164
165
|
)
|
|
@@ -180,6 +181,7 @@ class TerminalUI:
|
|
|
180
181
|
table.add_row("/plan", "Masuk ke Plan Mode (Riset & susun PRD plan.md otomatis)")
|
|
181
182
|
table.add_row("/build", "Masuk ke Build Mode (Eksekusi autonomous pembuatan & editing kode)")
|
|
182
183
|
table.add_row("/ask", "Masuk ke Ask Mode (Konsultasi murni tanpa modifikasi file)")
|
|
184
|
+
table.add_row("/update, /upgrade", "Perbarui yncli ke versi terbaru & restart otomatis")
|
|
183
185
|
table.add_row("/cd <folder>", "Pindah direktori kerja aktif")
|
|
184
186
|
table.add_row("/pwd", "Lihat path direktori saat ini")
|
|
185
187
|
table.add_row("/approval [on|off]", "Atur persetujuan tool (on = otomatis, off = tanya dulu)")
|
|
@@ -110,9 +110,19 @@ def perform_self_update() -> bool:
|
|
|
110
110
|
res = subprocess.run(pip_cmd)
|
|
111
111
|
if res.returncode == 0:
|
|
112
112
|
print("\n[SUCCESS] YNCLI berhasil diperbarui ke versi terbaru!")
|
|
113
|
-
print("
|
|
113
|
+
print("[YNCLI] Memulai ulang (restarting) CLI secara otomatis...\n")
|
|
114
114
|
# Clear update cache
|
|
115
115
|
CACHE_FILE.unlink(missing_ok=True)
|
|
116
|
+
|
|
117
|
+
# Automatically restart current process with same arguments
|
|
118
|
+
try:
|
|
119
|
+
import os
|
|
120
|
+
# Close old process and replace with new python instance
|
|
121
|
+
os.execv(sys.executable, [sys.executable, "-m", "yncli.main"] + sys.argv[1:])
|
|
122
|
+
except Exception:
|
|
123
|
+
# Fallback for Windows where execv might spawn
|
|
124
|
+
subprocess.run([sys.executable, "-m", "yncli.main"])
|
|
125
|
+
sys.exit(0)
|
|
116
126
|
return True
|
|
117
127
|
else:
|
|
118
128
|
print("\n[ERROR] Gagal memperbarui via pip. Coba jalankan manual:")
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
__version__ = "1.1.3"
|
yncli-1.1.2/yncli/version.py
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
__version__ = "1.1.2"
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|