arizuko › products › Personal assistant (Fiu) › setup
Personal assistant setup
The personal assistant needs one Telegram bot and a preferences file with what it must know about you.
The assistant needs an instance and a Telegram bot
- A running instance, from getting started.
TELEGRAM_BOT_TOKEN. The product declares it as required, because an assistant with no channel is only a directory.
create records the product for the instance
arizuko create -i fiu --product personal
The command records the product as ARIZUKO_DEFAULT_PRODUCT in .env and copies no file. At its first boot routd selects the product for the main group. The next arizuko package sync -i fiu installs the product files. To add the product to an existing instance as one more group:
arizuko group -i <instance> add telegram:<bot-id>/user/12345678 me -p personal
arizuko package sync -i <instance>
.env holds the token
TELEGRAM_BOT_TOKEN=REPLACE_ME
OPENAI_API_KEY=REPLACE_ME # optional: the oracle skill
package add installs the Telegram adapter
Start the instance as a systemd service, as getting started shows. Select the package, then restart the service to start the adapter. For an existing instance, replace fiu with its name:
arizuko package add -i fiu catalog:teled
sudo systemctl restart arizuko_fiu
The preferences file holds what Fiu must know
facts/preferences.md makes the difference between a generic assistant and your assistant. Write what you would otherwise repeat: how you like drafts, what you work on, your timezone and the names that come up often. It is a file, so edit it when it is wrong.
The facts/ files of the product are examples, not package files, so arizuko package sync never rewrites them. Copy them once from the repository checkout:
cp -r ant/examples/personal/facts /srv/data/arizuko_fiu/groups/main/
facts/ belong to the group, so a second group has a second memory, and nothing is shared. That is the containment guarantee, not a limit to work around. Scopes explains it.The assistant must quote your preferences
arizuko send -i fiu main "what do you know about how I like drafts?" --wait
A correct answer quotes your preferences file. A generic answer means that the file is not in place. Check groups/main/facts/preferences.md. For the existing-instance example, use its name and the me folder.
Three changes tune the assistant
- Voice
- Edit the persona file,
PERSONA.mdafter the first turn. - What it remembers
- The agent adds to
facts/itself. Remove old entries when they are wrong. Stale preferences are the main failure of a memory product. - Reminders
- Ask the agent for a reminder, and it makes a scheduled task. A task is a row on the store, not a file in the folder.