Some checks failed
Gitea Actions Demo / Explore-Gitea-Actions (push) Failing after 13m53s
## HTTP Client Refactoring - Create unified HttpClient module (src/http_client.rs) - Refactor 24 files to use shared HTTP client - Replace .unwrap() with proper error handling - Eliminate code duplication in HTTP requests ## Project Restructuring - Rename package: ai → aibot - Add dual binary support: aibot (main) + ai (compatibility alias) - Migrate config directory: ~/.config/ai/ → ~/.config/syui/ai/bot/ - Implement backward compatibility with automatic migration ## Testing Infrastructure - Add unit tests for HttpClient - Create test infrastructure with cargo-make - Add test commands: test, test-quick, test-verbose ## Documentation - Complete migration guide with step-by-step instructions - Updated development guide with new structure - HTTP client API reference documentation - Comprehensive refactoring summary ## Files Changed - Modified: 24 source files (HTTP client integration) - Added: src/http_client.rs, src/alias.rs, src/tests/ - Added: 5 documentation files in docs/ - Added: migration setup script 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
ai bot

- name : ai bot
- base : ai os
- host : yui.syui.ai, ai.syu.is
$ ai
$ docker run -it syui/aios ai
build
$ cargo build
$ ./target/debug/ai ai
$ ai ai -t avatar
login
# ai login $handle -p $password
$ ai l yui.syui.ai -p password
$ cat ~/.config/ai/token.toml
# ai l $handle -p $password -s $server
$ ai l ai.syu.is -p password -s syu.is
refresh
$ ai r
notify
$ ai n
$ ai n | jq .
bot
$ ai bot
command | sub | type | link | auth |
---|---|---|---|---|
/did | mention, reply | plc.directory/$did/log | user | |
/card | r, s, b | mention, reply | card.syui.ai | user |
/ten | start, close, d, p | mention, reply | card.syui.ai | user |
/fav | {cid} | mention, reply | card.syui.ai | user |
/egg | {password} | mention, reply | card.syui.ai | user |
/nyan | 🍬 | mention, reply | yui.syui.ai | user |
/diffusers | {keyword} | mention, reply | huggingface.co/diffusers | user |
/sh | {command} | mention, reply | archlinux.org | admin |
/占い | mention, reply | yui.syui.ai | user |
@yui.syui.ai /did
test
zsh
$ ./test/ai.zsh t
make
$ cargo install --force cargo-make
$ cargo make build
docker
.env
HANDLE=ai.syu.is
PASSWORD=xxx
HOST=syu.is
ADMIN=syui.syu.is
$ docker compose build
$ docker compose up -d
pds:card
- https://atproto.com/ja/guides/lexicon
- https://at.syu.is/at/did:plc:uqzpqmrjnptsxezjx4xuh2mn/ai.syui.card/3lagpwihqxi2v
# oauth(button)
[yui]ai.syui.card.verify -> [user]ai.syui.card
[yui]
$ ./target/debug/ai card-verify -i 0 -p 0 -r 0 -h syui.ai -d did:plc:uqzpqmrjnptsxezjx4xuh2mn
{"uri":"at://did:plc:4hqjfn7m6n5hno3doamuhgef/ai.syui.card.verify/3lagpvhppmd2q"}
[user]
$ ./target/debug/ai card -i 0 -p 0 -r 0 -v at://did:plc:4hqjfn7m6n5hno3doamuhgef/ai.syui.card.verify/3lagpvhppmd2q
pds:game
- https://atproto.com/ja/specs/record-key
- https://at.syu.is/at/did:plc:uqzpqmrjnptsxezjx4xuh2mn/ai.syui.game/self
# oauth(play)
[yui]ai.syui.game.user -> [user]ai.syui.game
[account]
# https://at.syu.is/at/did:plc:4hqjfn7m6n5hno3doamuhgef/ai.syui.game.user/syui
## [rkey]
1. echo $handle|cut -d . -f 1
2. $handle
3. tid
Description
Languages
Rust
97.2%
Shell
1.7%
TypeScript
1.1%