Releases: Aknuun/Negahban-OpenCode
Releases · Aknuun/Negahban-OpenCode
Release list
v8.12
v8.12 — مدیر نشستها با انتخابگر دکمهای
🗂 مدیر نشستها
- ۲۰ نشست در هر صفحه (قبلاً ۱۰) با شمارهگذاری پیوسته: صفحهٔ ۱ → ۱..۲۰، صفحهٔ ۲ → ۲۱..۴۰ و…
- عنوان هر نشست از عنوان خودکار opencode (خلاصهٔ محتوای نشست) گرفته میشود.
- بعد از زدن حذف / ویرایش / مشاهده، صفحهٔ انتخابگر با دکمههای شمارهٔ همان صفحه باز میشود.
- انتخاب چندانتخابی است: روی شمارهها میزنی تا تیک بخورند، بعد
▶️ تأیید. - دکمههای ☑️ انتخاب همه و 🔲 لغو انتخاب.
- دکمهٔ 🔀 عملیات گروهی: انتخاب چند نشست و سپس حذف انتخابشدهها یا تغییر نام انتخابشدهها.
- مشاهده: تکنشست فعال و موضوعاتش نمایش داده میشود؛ چندنشست، خلاصهٔ موضوعات هرکدام.
⏱ انتخاب خودکار پاسخ پیشنهادی
- در سؤالهای تکگزینهای مدل، اگر تا ۵۰ ثانیه کاربر انتخابی نکند، گزینهٔ پیشنهادی (یا گزینهٔ اول) خودکار انتخاب میشود.
- شمارش معکوس روی پیام سؤال بهروز میشود.
Full Changelog: v8.11...v8.12
v8.11
v8.11 — نگهبان اوپن کد (Negahban OpenCode)
🏷 تغییر نام کامل پروژه
- نام پروژه از «GAZAN-opencode-bot / opencode-tg-bot» به «نگهبان اوپن کد» (Negahban-OpenCode) تغییر کرد.
- مخزن گیتهاب:
Aknuun/Negahban-OpenCode - پوشه/باینری/سرویس:
negahban-opencode(سرویس systemd:negahban-opencode.service) - ماژول Go، اسکریپت نصب، README و ورکفلوی انتشار همه با نام جدید همگام شدند.
🔗 آدرسهای جدید
curl -fsSL https://raw.githubusercontent.com/Aknuun/Negahban-OpenCode/master/install.sh -o /tmp/negahban-opencode-install.sh && sudo bash /tmp/negahban-opencode-install.shاگر نصب قبلی داشتی، همان اسکریپت جدید را اجرا کن تا آپدیت شود؛ توکن و تنظیماتت حفظ میشود.
Full Changelog: v8.10...v8.11
v8.10
v8.10
🐛 رفع باگ تشخیص پروایدر در ساعت پیک
- قبلاً فهرست پایان چت چیزی مثل «ساعت پیک deepseek-flash ثبت نشده است» نشان میداد؛ چون پروایدر از روی شناسهٔ مدل حدس زده میشد.
- حالا پروایدر از
providerIDواقعیِ opencode (هم در نشست و هم در پیام) خوانده میشود؛ پس DeepSeek درست تشخیص داده میشود و ساعت پیکش ثبت و نمایش داده میشود. - اگر سرور
providerIDندهد، بهترتیب از بخشprovider/modelو سپس تطبیق شناسهٔ مدل با کاتالوگ استفاده میشود.
🔇 رفتار روشنتر ساعت پیک
- هنگام ارسال پیام: فقط اگر در بازهٔ پیک باشی هشدار/تأیید میگیری؛ خارج از پیک هیچ پیامی فرستاده نمیشود.
- در پایان هر چت: ساعت پیک پروایدر همان مکالمه ثبت میشود و وضعیت 🟢/🔴 نشان داده میشود.
- برای پروایدر ناشناس دیگر پیام گمراهکنندهٔ «ثبت نشده» نمایش داده نمیشود.
نصب / آپدیت
curl -fsSL https://raw.githubusercontent.com/Aknuun/GAZAN-opencode-bot/master/install.sh -o /tmp/opencode-tg-install.sh && sudo bash /tmp/opencode-tg-install.shFull Changelog: v8.9...v8.10
v8.9
v8.9
⏰ یادآور ساعت پیک (گران) پروایدرها
- اگر لحظهای که پرامپت میفرستی در بازهٔ پیک مصرف پروایدر فعال باشی، ربات قبل از اجرا هشدار میدهد و میپرسد «ادامه بدهم؟» تا خودت تصمیم بگیری.
- اطلاعات پیک DeepSeek بهصورت داخلی ثبت شده (به وقت ایران) و برای بقیهٔ پروایدرها هنگام افزودن کلید API پیشنهاد شناسایی/فعالسازی میشود.
- در پایان هر چت وضعیت پیک پروایدر همان مکالمه نمایش داده میشود: 🟢 خارج از پیک یا 🔴 همین حالا در پیک (با ساعت پایان).
- پشتیبانی از بازههای عبورکننده از نیمهشب و روزهای هفته.
🔄 سینک زندهٔ فهرست مدلها با خود opencode
- کاتالوگ مدل/پروایدر دیگر فقط از models.dev خوانده نمیشود؛ مستقیماً از endpoint استاندارد
/providerخود سرور opencode هم سینک میشود. - یعنی پروایدرها و مدلهای سفارشی کانفیگ تو هم در فهرست ربات دیده میشوند و همیشه با واقعیت سرور همگام است.
- در فهرست مدلها حالا نام خوانا مدل هم کنار شناسهاش نشان داده میشود.
🗑 امکانات سریعتر
- حذف سریع نشست: زیر پیام خلاصهٔ پایان چت، دکمهٔ
🗑 حذف این نشست(فعال تا ۱۰ ثانیه) بدون رفتن به منوی🗂 نشستها. - حذف کلید API: در صفحهٔ کلیدها کنار هر کلید فعال دکمهٔ
🗑اضافه شد؛ بعد از حذف، سرور خودکار ریاستارت میشود.
نصب / آپدیت
curl -fsSL https://raw.githubusercontent.com/Aknuun/GAZAN-opencode-bot/master/install.sh -o /tmp/opencode-tg-install.sh && sudo bash /tmp/opencode-tg-install.shFull Changelog: v8.8...v8.9
v8.8
v8.7
v8.6
v8.5
v8.4
v8.3
v8.3
✨ جدید
- خلاصهٔ پایان کار: بعد از هر اجرا یک پیام جداگانه زیر پاسخ فرستاده میشود با نتیجه (✅ انجام شد / ⛔ متوقف شد /
⚠️ ناتمام)، مدل، agent، مدت و مصرفِ همین اجرا (توکن ورودی/خروجی و هزینه به دلار). - نام مدل هنگام فکر کردن: پیام «در حال انجام» حالا اسم مدل را نشان میدهد (مثل
🧠 deepseek/deepseek-v4-flash در حال فکر کردن…).
🏗 بازسازی ساختار (no-op رفتاری)
internal/occlient: کلاینت REST سرور opencode + تایپها به پکیج جدا و اینترفیسocAPI.internal/statefile: ذخیرهٔ state بهصورت اتمی (tmp+rename) و debounce؛ فلاش قطعی هنگام خروج با SIGTERM.- رباتِ تکپارچه تجزیه شد:
userStore(state کاربران)،uiState،runManager،qReg— هرکدام قفل مستقل؛mutexسراسری حذف شد. - لاگ ساختیافتهٔ
log/slogبهجایlog. - روتر یکپارچهٔ callback + اینترفیس
telegramAPI. - تستهای جدید (occlient/statefile/userStore + تست جریان ربات با فیکها).
📦 فایلها
opencode-tg-bot— باینری لینوکس amd64 (ساختهشده باgo build -ldflags "-s -w").- نصب/آپدیت روی سرور همچنان با
install.shاز سورس انجام میشود.