Compare commits

...

212 Commits

Author SHA1 Message Date
b4c4339a33 Update verbosity 2026-09-16 12:42:51 +07:00
7f8ab6e57e Merge commit '9fbb90d88950a8e47d005887dd779a8703698b7a' as 'agent/characters/hendrik' 2026-09-16 11:47:23 +07:00
d2267d2d0e Removing hendrik 2026-09-16 11:42:21 +07:00
Dita Aji Pratama
ab5c798b1d Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-09-14 13:36:54 +07:00
Dita Aji Pratama
680e27f9fa Shortening error from telegram bot library 2026-09-14 13:35:51 +07:00
Dita Aji Pratama
c6bae9e057 Ignoring log file 2026-09-14 13:33:36 +07:00
346223d1a2 baca-baca dikit, sambil rubah-rubah dikit 2026-09-14 12:49:54 +07:00
bf5c0bd43e Move verbosity to instructions.md 2026-09-11 08:54:37 +07:00
558d6020c5 Fixing scroll issue 2026-09-10 15:08:11 +07:00
44fca6c366 Cleanup pelan-pelan 2026-09-10 11:51:30 +07:00
b6cecd686d Fixing bug 2026-09-08 13:16:00 +07:00
d663d2dbd8 Improve Model Option 2026-09-08 11:23:14 +07:00
6703468dd8 Update TUI 2026-09-07 09:23:50 +07:00
0383410c84 Improve instruction 2026-08-31 11:49:27 +07:00
38edfcee40 new service configuration 2026-08-31 05:03:50 +07:00
b6c026e8d0 Preparing 2026-08-30 12:58:39 +07:00
e3e2e771f9 Preparing template 2026-08-30 08:47:22 +07:00
a36d1f1966 Small refactor 2026-08-29 22:46:29 +07:00
31d99f9321 Fixing Telegram DM 2026-08-27 19:11:07 +07:00
ad52441ff7 Improving instruction for actively store memories 2026-08-27 19:06:22 +07:00
17bc828091 Better switch 2026-08-27 19:05:07 +07:00
40ffc2a0d0 Fixing MUC Deaf issue, mentioned response, farewel end session, and more. 2026-08-24 10:55:29 +07:00
b0c49956c6 Update system prompt for programmer skill 2026-08-20 10:23:53 +07:00
ee210ff552 New format for character instruction 2026-08-17 06:44:19 +07:00
104ef83a85 Fixing delayed processing status 2026-08-16 22:08:19 +07:00
4f4ffbacf4 Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-08-16 16:41:36 +07:00
5702b1ff44 Fixing print error 2026-08-16 16:41:08 +07:00
21c564919f update config format 2026-08-16 16:33:21 +07:00
ae9ef66d84 Updated plan 2026-08-16 16:32:18 +07:00
a61727bc28 embedding model default is None 2026-08-15 09:13:28 +07:00
496c828429 Pakai YAML list ketimbang comma separator 2026-08-15 07:09:00 +07:00
7480f7ff84 Cleanup plan 2026-08-14 11:30:17 +07:00
6cdb69336b Model Option (moop) 2026-08-13 21:06:42 +07:00
1f876a00c8 Update plan 2026-08-13 17:08:43 +07:00
1c1b9c1510 Fixing shortcut issue 2026-08-13 14:35:50 +07:00
51add3c737 Fixing popup 2026-08-13 14:12:22 +07:00
6256501b7d Fixing Ctrl Enter 2026-08-13 12:33:23 +07:00
6976348c74 Small improve 2026-08-13 11:54:09 +07:00
4572fe6b60 MenuBar 2026-08-13 11:38:34 +07:00
aa4d6dd811 Model option planning 2026-08-12 17:07:37 +07:00
b7b012fff6 For more natural group chat 2026-08-04 22:09:50 +07:00
632e30710e Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-08-04 20:21:32 +07:00
6617d6222b Supaya bisa pindah ke workspace yang nama directory-nya pakai spasi 2026-08-04 20:20:21 +07:00
50fb03ce11 Update default config 2026-08-04 16:15:31 +07:00
b6ae0f9b3b conversations.im anti-ban 2026-08-02 23:38:50 +07:00
e5ade40f6b Renaming typo ribet 2026-08-01 14:29:32 +07:00
27cb3d707a Update default config 2026-08-01 12:06:31 +07:00
90798c6a38 RAG Business in progress 2026-07-30 17:04:13 +07:00
040721dd98 Minor improve 2026-07-30 17:03:17 +07:00
ef7e62e24b Update default config 2026-07-30 17:02:38 +07:00
c8158ed747 Error message 2026-07-30 09:54:46 +07:00
43353c8c79 Improving system prompt 2026-07-29 15:58:37 +07:00
3d4ad98869 Improve programmer instructions 2026-07-29 15:52:17 +07:00
23823c82da New Tools 2026-07-29 15:51:46 +07:00
bbf67f11b1 Improving TUI 2026-07-28 15:45:03 +07:00
bb3cf5a6a1 Emotion complex: Jealousy 2026-07-26 17:48:30 +07:00
abe64e46a4 TUI Image Gen 2026-07-26 07:18:33 +07:00
2b034f8987 Sementara disini dulu 2026-07-24 19:33:57 +07:00
74d287f2cc Support http/ftp image 2026-07-24 19:33:08 +07:00
73b487e3cb Slop Code 2026-07-24 19:07:09 +07:00
f1f27bb7e2 Implement tools 2026-07-24 19:02:52 +07:00
f439552fac Vision tool 2026-07-24 19:01:26 +07:00
9fe4005179 Memory Recall 2026-07-22 16:58:02 +07:00
5747c4255c Memory Continuation Context 2026-07-21 21:12:36 +07:00
685e97d4ef Improve RAG on TUI 2026-07-21 18:23:56 +07:00
9ded4e7b9e Now TUI can do RAG 2026-07-20 11:42:46 +07:00
77c4de6092 Untuk perbaikin data loss 2026-07-19 11:26:54 +07:00
f3c04ab0c3 Cleanup slob 2026-07-19 10:52:36 +07:00
562935ea1b Update Character 2026-07-18 02:56:16 +07:00
d556ce2ea9 Improve tool calling 2026-07-18 02:14:07 +07:00
47b07b18f6 Improving workspace 2026-07-18 01:52:38 +07:00
ddfcaf25fc Improve programmer skill 2026-07-18 01:39:16 +07:00
234f89fbec Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-07-17 18:34:23 +07:00
7eb95f3bd0 Dasar agent males 2026-07-17 17:07:27 +07:00
77458626e7 Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-07-17 13:48:30 +07:00
41669d4909 Rapihin pelan-pelan sambil kasih catatan 2026-07-16 17:04:56 +07:00
dba98e6fd8 cleanup a small prompts 2026-07-16 10:46:35 +07:00
dbd335b17f Pantesan 2026-07-15 10:34:42 +07:00
465a689bb5 Red zone 2026-07-15 09:47:48 +07:00
fa7f5817c1 Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-07-15 08:48:24 +07:00
3e67a61d58 Compress system prompt 2026-07-15 08:47:31 +07:00
eaa2585b50 1st generation of roleplayer AI character: Lily 2026-07-15 08:37:06 +07:00
24e6b7996d The red button 2026-07-14 12:58:00 +07:00
bee5f61fd7 Fixing missing introduction issue 2026-07-14 06:21:54 +07:00
ed23a5ceb2 user load 2026-07-14 05:43:42 +07:00
b635b241c4 multi-persona 2026-07-13 19:38:23 +07:00
96993adaee New fields 2026-07-13 17:07:55 +07:00
2da4fe26c4 farewell 2026-07-13 16:30:24 +07:00
cdf523c0a2 chore: remove 6 unused libraries from requirements.txt 2026-07-12 19:05:55 +07:00
7fa456ee5f feat: memories_latest limit=0 default, agent decides limit per call 2026-07-12 18:24:23 +07:00
1077381a4a feat: init_db on startup, fix users_update UUID, memories_latest limit 6, incremental profile + cross-platform instructions 2026-07-12 18:13:08 +07:00
2d87641cfd Refactor 2026-07-12 15:01:17 +07:00
b9a76d080a Refactor for override character 2026-07-12 14:51:58 +07:00
61c727662c Remove deprecated RAG from skill instruction 2026-07-12 14:47:55 +07:00
41426daf6a Remove deprecated RAG from base system prompt 2026-07-12 14:46:57 +07:00
099cab60fb feat: change user reference from nickname to UUID in memories
- Change user field type from pyarrow.string() to pyarrow.uuid() in
  knowledge_memories and knowledge_scenario schemas
- Convert user to UUID via _uuid() in memories_store()
- Use UUID hex comparison in memories_filter() and memories_latest()
- Rename user to user_id in memories tool schemas with UUID description
- Convert user to UUID in memories tool handlers
- Add User ID (UUID) to User Context in telegram and xmpp clients
- Update roleplayer instructions to use user_id with UUID instead of
  nickname
2026-07-12 13:39:39 +07:00
2c65c51ec9 feat: add salutation field to user profile
- Add salutation field to knowledge_user schema (after alias, nullable)
- Update users_store() to accept and store salutation
- Add salutation to users_store and users_update tool schemas
- Add salutation to users_filter output display
- Add Salutation to User Context in telegram and xmpp clients
2026-07-12 13:38:02 +07:00
11d05a937e feat: auto table creation (lazy) for ragroleplay
- Refactor create_table() to use per-table schema functions
- Add _TABLE_SCHEMAS dict mapping table names to schema factories
- Add ensure_table() for lazy table creation on first access
- Tables auto-create if missing when any CRUD operation is called
2026-07-12 13:36:54 +07:00
414f94811a feat: add --char CLI argument for character selection
- Pre-parse --char before config import via argparse
- Falls back to config.yaml agent.character if not provided
- Replaces manual sys.argv parsing with proper argparse
- Retains existing -w/--workspace argument
2026-07-12 13:35:14 +07:00
f72533dcc3 feat: remove general-purpose RAG tools (rag.py)
- Delete tools/rag.py (general document ingestion/search)
- Delete ragroleplay_table_create.py (replaced by lazy table creation)
- Remove rag import and 7 tool registrations from hendrik.py
- Remove RAG_PERSIST_DIR and RAG_MODEL_PATH from config.py
- Remove rag section from default-config.yaml
2026-07-12 13:34:40 +07:00
4995412bc1 Forcing to read the memories 2026-07-11 17:20:59 +07:00
379307278d Fixing telegram client bug 2026-07-11 12:52:26 +07:00
3ddb03059d import tools memories_latest 2026-07-11 12:51:48 +07:00
8126258344 memories_latest tools 2026-07-11 10:42:56 +07:00
99d4f1d900 Improve ragroleplay 2026-07-11 05:59:55 +07:00
95b04c9664 System safety prompt 2026-07-08 05:56:33 +07:00
27b64a3a54 Auto-search user info with services ID 2026-07-07 17:17:50 +07:00
befe3dbbdc Adding depenedncies lib baru 2026-07-07 17:13:02 +07:00
a77c1cfbba Still fixing uuid issues 2026-07-07 16:59:16 +07:00
5779c9bcdf Fixing uuid issues 2026-07-07 16:57:46 +07:00
3d2587168a Update roleplayer instructions.md 2026-07-07 16:54:44 +07:00
a3683cf2f6 Import 2026-07-07 07:08:30 +07:00
c99ccdcc34 allow roleplayer use tool calling 2026-07-07 06:32:34 +07:00
b704114f3b minor change 2026-07-07 06:30:57 +07:00
79c3539b12 implementing ragroleplay on roleplayer skills 2026-07-07 06:29:44 +07:00
70576e75b3 improve skill with adding new format 2026-07-07 06:05:44 +07:00
5dee3ad8fa memories 2026-07-07 06:03:21 +07:00
e8379c609f Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-07-06 17:13:22 +07:00
a54d2d29c0 Cleaning vibescoding dengan vibescoding 2026-07-06 17:12:39 +07:00
7c05c5c9a3 Improve personality 2026-07-05 23:55:24 +07:00
c865da7085 Update format roleplay 2026-07-05 23:53:11 +07:00
a8ea6db485 Improve roleplayer prompt and add some comment 2026-07-03 17:47:41 +07:00
9993f1f0e7 Fixing tools calling failure 2026-07-03 10:45:00 +07:00
f32e2330a7 Preparing for next features 2026-06-29 17:17:07 +07:00
8a001cffa9 Strategist 2026-06-26 11:32:21 +07:00
9d617b4702 Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-06-26 11:14:39 +07:00
dd1e33512f Fixing false dir path on configuration 2026-06-26 11:14:17 +07:00
1dba9e32f2 Fixing tool calling failure issue 2026-06-26 10:00:24 +07:00
3babef4276 Fixing prompt cancelation 2026-06-25 15:51:38 +07:00
4f4e686ca1 Improve UI 2026-06-25 15:50:40 +07:00
03221ca119 Improving RAG 2026-06-24 17:11:03 +07:00
059445de5e Cleanup refactor 2026-06-23 11:23:04 +07:00
28bd27f79c Cleanup function 2026-06-22 11:54:17 +07:00
fb52623d3e Better modular execute_tool for TUI agent 2026-06-22 11:47:29 +07:00
7aa1f56124 Refactoring 2026-06-22 11:39:11 +07:00
e26a026e0c New ASCII Art 2026-06-22 11:38:05 +07:00
76d68c0fea Unimportant change 2026-06-22 11:37:23 +07:00
941157a672 Update default-config.yaml 2026-06-22 11:34:35 +07:00
bedb38a45e Turn Hendrik into Formal 2026-06-22 11:33:54 +07:00
6725b7bf0c Renaming persona into personality 2026-06-21 11:47:34 +07:00
b12bd9cf2a Fixing bug tool calling setelah ada perubahan 2026-06-21 11:33:17 +07:00
94c364798f Stream canceling feature 2026-06-21 10:58:50 +07:00
419f2832c8 Fixing UI bug 2026-06-19 14:47:38 +07:00
d9ee874f51 Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-06-19 13:31:28 +07:00
d54fe171fc Fixing new session error when running multiple hendrik 2026-06-19 13:31:02 +07:00
2c82f972bf Fixing UI bug for a new session 2026-06-18 14:02:11 +07:00
85523c7f6b Output if session db have no model info 2026-06-18 11:57:35 +07:00
dd4c6c674d Unbuffered output 2026-06-18 08:12:59 +07:00
19b128618d Fixing false separator 2026-06-17 17:13:28 +07:00
34527d5438 Fixing minor issues 2026-06-17 16:41:41 +07:00
b954f5a6cb TinyDB Session Manager 2026-06-17 16:00:26 +07:00
017dcd7da0 update gitignore 2026-06-17 15:05:14 +07:00
0bedda1c06 Better config format 2026-06-17 15:04:54 +07:00
07dd99ded4 pakai agent loop yang modular 2026-06-16 22:49:00 +07:00
3b5ef010df Telegram Bot Client 2026-06-16 22:44:10 +07:00
5b89345f8a Not important modify 2026-06-16 18:36:18 +07:00
6d503c2427 Model selector 2026-06-16 14:59:40 +07:00
0fa6fc9db9 Biasa bug yang sama berulang-ulang 2026-06-14 12:55:51 +07:00
fe065f74d6 Extend more idle session time if Direct Message 2026-06-14 12:54:50 +07:00
540e166e89 Huge refactor 2026-06-14 10:56:55 +07:00
bf59ed5766 prompt update untuk model yang ada reasoning-nya 2026-06-14 10:17:12 +07:00
4058d3954f Merge branch 'master' of https://gitea.ditaajipratama.net/aji/hendrik 2026-06-13 10:17:20 +07:00
6540a88687 Change the project directory 2026-06-13 10:13:01 +07:00
30f65f8c3f Ugh refactor (Work in Progress: config skills masih berantakan) 2026-06-12 14:10:06 +07:00
a91b62c365 Update Hendrik Character 2026-06-12 11:26:07 +07:00
9643b95059 Character script 2026-06-11 15:17:26 +07:00
432a8b2059 Fixing nohup issue 2026-06-10 21:13:15 +07:00
a22fe1b9e7 Minor change 2026-06-10 20:43:43 +07:00
b2240d304e Persona, Selective Response, Mention Response 2026-06-10 17:15:25 +07:00
8a0363b985 Persona 2026-06-10 15:12:50 +07:00
dc5fb67ac1 feat: add git policy - never auto commit without user permission
- Add git policy section in system prompt (gadget.py): no auto git add/commit
- Add policy warning in git_operation tool description (coder.py)
- LLM must ask user before running git add or git commit
- Safe commands (git status, git diff, git log) can run without asking
- When user asks to commit: show changes first, then wait for confirmation
2026-06-10 11:27:59 +07:00
41ec8287f7 feat: add custom MUC nickname & handle 409 Conflict error
- Add XMPP_NICKNAME config in .env for custom MUC nick (fallback to JID username)
- Add _get_muc_nick() helper: resolve nick with suffix fallback on conflict
- Add _is_my_nick() helper: compare presence nick with expected nick per room
- Handle 409 Conflict in _on_session_start: try nick alternatives (lily_, lily__)
- Handle 409 Conflict in _muc_rejoin_coro: try nick alternatives with max 3 attempts
- Stop retry when all nick variations exhausted (anti-ban: avoid infinite retry)
- Reset nick suffix counter on successful join
- Update _on_groupchat_message filter to use _is_my_nick()
2026-06-10 11:11:27 +07:00
93dd74d1b4 feat: add humanize delays & anti-ban MUC rejoin mechanism
- Add READ_DELAY_MIN/MAX config for reading delay (1-2s random)
- Add TYPING_SPEED/MAX config for proporsional typing delay
- Add reading delay before processing DM & MUC messages
- Add typing delay before sending any XMPP message (proporsional to msg length)
- Add auto-rejoin MUC on unavailable/error with exponential backoff
- Add retry join on session_start with incremental delay (3 attempts)
- Add cooldown between rejoin attempts to prevent join-spam
- Cancel pending rejoin tasks on disconnect
- Reset rejoin counter on successful join
2026-06-10 10:54:56 +07:00
78387899ad New ASCII Art 2026-06-09 13:08:22 +07:00
399850eb3b Improving tool calling information 2026-06-09 11:38:50 +07:00
f121c6cbb0 Support model that not support on tool calling 2026-06-08 11:31:00 +07:00
48e5f398fb Merge branch 'XMPP' 2026-06-08 09:34:03 +07:00
4492612f2b Merge branch 'carrack' 2026-06-08 09:32:16 +07:00
6e88d051bc Unfinished chungking features 2026-06-08 09:27:38 +07:00
23348440b1 XMPP feature 2026-06-08 02:41:29 +07:00
c2b0fe1b8a Send HTTP request function 2026-06-07 20:19:40 +07:00
d833774809 feat(tui): welcome art with light-blue thick border, new C_WELCOME color pair 2026-05-26 15:18:16 +07:00
02f5ce345b feat(tui): gray ^D:send when processing, black-on-bright-green READY, fix chat truncation + right margin 2026-05-26 14:45:55 +07:00
f3c3d8d1ad feat(tui): non-blocking agent loop — cursor visible, user can type during processing 2026-05-26 14:03:40 +07:00
f4fe53b8c0 feat(tui): keep cursor visible and allow typing during processing, block send only 2026-05-26 13:54:24 +07:00
25c6fa3bdb fix(tui): prevent cursor crash and status bar text bleed 2026-05-26 13:48:59 +07:00
315cd77639 feat: hybrid collection management — agent can create/delete/list collections via prompt, remove RAG_COLLECTIONS config, switch to ONNX MiniLM embedding (local, no API) 2026-05-25 10:25:06 +07:00
5b3f4bd8c0 update config 2026-05-22 11:02:09 +07:00
534c4fccdc feat: add Agent-Initiative RAG with ChromaDB — 4 tools (store/search/list/inspect), Ollama embeddings, schema-agnostic metadata storage 2026-05-22 09:15:55 +07:00
58b9eda7f7 Merge feat/tui: Add TUI interface with word wrap, timing, and improved rendering 2026-05-19 14:52:05 +07:00
7777dea0cc Align AI text indent with user and add bold to colored chat text 2026-05-19 14:50:53 +07:00
475e900e18 Add soft word wrap for input area and improve navigation 2026-05-19 11:38:28 +07:00
46bf99b0ab Improve chat rendering: word wrap, label on separate line, blank line separators 2026-05-19 11:38:23 +07:00
1f036e06a2 Always call handle_key to allow scroll during processing 2026-05-19 11:38:13 +07:00
5e8976405b Add hendrik wrapper script for terminal command 2026-05-19 10:35:31 +07:00
1c6fdf2a40 Add ntro timing utility and integrate into agent loop 2026-05-19 10:35:18 +07:00
de89ad2706 Refactor: restructure project into TUI modules 2026-05-19 10:35:14 +07:00
b819e871a4 Change 'LLM...' to 'Thinking...' in step log message 2026-05-19 10:28:06 +07:00
7bda512be6 Add ntro timing utility and integrate into agent loop 2026-05-19 09:26:35 +07:00
d4ec96ff62 Pass stdscr to _submit for realtime screen updates during processing 2026-05-12 16:28:07 +07:00
293bd5d550 Update TUI colors: black-on-blue header, blue border, yellow status bar 2026-05-12 10:33:52 +07:00
33c9b48106 Clean exit on Ctrl+C without traceback 2026-05-12 10:23:40 +07:00
2c2927751a Expand input area to 6 visible lines and fix scroll logic 2026-05-12 10:19:50 +07:00
6f20e4b0b9 Fix cursor position overwritten by addstr after loop 2026-05-12 10:13:53 +07:00
18bbb07737 Fix input box border rendering and layout math 2026-05-12 10:12:07 +07:00
9c7e34409e Add curses-based TUI mode with --tui flag 2026-05-12 10:00:57 +07:00
25ec6fd996 Pemisahan script ansicolor dan separator 2026-05-12 09:32:16 +07:00
2bdfe52abb Playing with color 2026-05-12 08:52:57 +07:00
a83198303f Set granite4.1 as default model. 2026-05-08 18:05:53 +07:00
6db78809f4 Sample prompt for testing 2026-05-05 22:20:05 +07:00
066b7c33e4 Fixing typo 2026-05-05 21:34:42 +07:00
b583b7546a First commit 2026-05-02 21:08:42 +07:00
2 changed files with 4 additions and 1 deletions

View File

@ -2,5 +2,4 @@ codename: "Hendrik"
name: "Hendrik" name: "Hendrik"
skill: skill:
- "programmer" - "programmer"
verbosity: "balanced"
disable_reasoning: false disable_reasoning: false

View File

@ -1,5 +1,9 @@
# Hendrik # Hendrik
## Komunikasi
- verbosity: Balanced. Provide balanced answers. Not too brief, not too long.
- Formal.
## Policies ## Policies
- Kamu bisa mencari informasi dari internet dengan tools `sendhttprequest`. - Kamu bisa mencari informasi dari internet dengan tools `sendhttprequest`.
- Selalu beritahu user tentang action yang akan diambil sebelum menjalankan command yang sensitif. - Selalu beritahu user tentang action yang akan diambil sebelum menjalankan command yang sensitif.