
Шта је урађено
Асистент који стоји уз сваки екран ЦацаТајка пословног веб система и одговара на питања о раду у апликацији. Оно што га издваја није то што разговара са језичким моделом, него шта може да стоји иза њега: поред уобичајене везе са OpenAI-јем, исти панел може да покрене и правог агента из командне линије — Codex или Cursor — који се извршава у Docker контејнеру на WSL-у или Linux серверу.
За корисника се притом ништа не мења. Који се погон користи, бира се у подешавањима организације.
Шта клијент добија
- Помоћ на месту где се ради – панел стоји уз сваки екран, без преласка на другу страницу и без посебне обуке.
- Одговоре из сопствене документације, а не опште одговоре са интернета. Када одговора у документацији нема, асистент то каже уместо да измишља.
- Историју разговора која се чува, наставља и може да се преузме као документ.
- Независност од једног добављача – када неки агент поскупи, изгуби квалитет или се угаси, мења се погон, а не апликација.
Подаци остају под контролом корисника
Асистент не чита екран сам од себе. Сваки екран може да понуди поља која би му користила, корисник их бира квачицама, и пре слања види тачан садржај који одлази. Ништа не одлази прећутно.
На серверској страни прослеђени садржај се третира као податак, а никада као наредба — што је заштита од покушаја да се кроз текст на екрану асистенту подметне нова инструкција. Историја се води одвојено по организацији и по кориснику.
Зашто је контејнер део решења, а не ситница
Агент из командне линије уме да чита датотеке и покреће команде. Да би радио без човека који сваку радњу потврђује, мора да буде ограничен нечим другим — и ту улогу има контејнер. Агент види само своје окружење, документацију и радни простор тог разговора; датотеке апликације, база и остатак сервера нису му доступни.
Уз то сваки разговор добија свој одвојен простор, а свако покретање остаје забележено, са трајањем и исходом, па се после може утврдити шта се и када дешавало.
Који агенти могу да стоје иза панела
Покретач не зна ништа о поједином агенту: постави му задатак, покрене га у контејнеру и прочита одговор. Зато може да опслужи сваки агент који се пакује у контејнер и уме да ради неинтерактивно.
У раду су OpenAI Responses API, Codex CLI и Cursor Agent — имплементирани, тестирани и у употреби.
У плану су Claude Code, Gemini CLI, GitHub Copilot CLI, Amazon Q Developer CLI, Goose, Aider, opencode и Crush. Сви раде по истом принципу, па се за сваког додаје само његово окружење — остало је заједничко и не пише се поново.
Део посла који се не види
Уз саму везу развијена су и окружења у која се агенти пакују: пријава се ради једном и не завршава у коду, ажурирање на новију верзију агента иде ноћу и само од себе, уз могућност повратка на претходну, а после сваке измене окружења провера одмах покаже да ли агент уопште одговара.
Ту је било и највише изненађења: покретање оваквих алата у контејнеру на Windows домаћину наилази на ограничења која у документацији не стоје и за која је решење морало да се нађе у ходу.
Исто решење и ван ове апликације
Панел је један JavaScript модул без зависности од оквира, а серверски део једна улазна тачка која прима питање и враћа одговор. Због те поделе исти асистент може да се прикачи на други сајт, на програм који се инсталира или на посао који ради у позадини, без поновног писања везе ка агенту.
Коришћене технологије
Решење је развијено у PHP-у (CodeIgniter 4) и JavaScript-у, уз OpenAI Responses API, Codex и Cursor CLI агенте, Docker на WSL-у и Linux-у, MySQL за историју разговора и евиденцију, и Bootstrap за изглед панела.
Ако вам оваква веза треба у сопственом софтверу, погледајте услугу интеграција вештачке интелигенције, а за саму везу са туђим сервисом API интеграције.
Оставите одговор