已添å å½ä»¤æ¥å¿è®°å½åæ°æ®åºåè½ | AIçæåç¿»è¯
已宿ã以䏿¯æå»ºçå 容ï¼
æ°æä»¶ï¼
ww/db.pyâ SQLite 模åï¼get_db_path()ãinit_db()ãlog_command()ãparse_command()ww/db_stats.pyâww dbå½ä»¤ï¼å å« 5 个åå½ä»¤ï¼statsãrecentãtopãerrorsãsearch
ä¿®æ¹çæä»¶ï¼
ww/main.pyâmain()ç°å¨ä¼æè·åå§åæ°å¹¶éè¿ try/finally è®°å½æ¯æ¬¡è°ç¨ï¼æåæé误ï¼ãååé»è¾ç§»è³_main_dispatch()ã.env.exampleâ æ·»å äºDB_PATHææ¡£è¯´æ.envâ 设置DB_PATH=/Users/lzwjava/projects/jekyll-ai-blog/ww.db~/.zsh/completions/_wwâ æ·»å äºdbå½ä»¤åå ¶ææåå½ä»¤å--limitæ å¿
æ°æ®åºæ¨¡å¼ï¼
command_log (
id, timestamp, raw_command, group_name, subcmd, exit_code, cwd
)
ä½¿ç¨æ¹æ³ï¼
ww db stats -- æ»ä½ç»è®¡ãçé¨åç»ãé误çãæç¹å¿æ¥æ
ww db recent -- æè¿ 20 æ¡å½ä»¤ï¼ä½¿ç¨ --limit Nï¼
ww db top -- æå¸¸ç¨å½ä»¤ï¼ä½¿ç¨ --limit Nï¼
ww db errors -- æè¿å¤±è´¥çå½ä»¤
ww db search <pattern> -- å¨åå²è®°å½ä¸æç´¢
ç°å¨æ¯æ¬¡ ww è°ç¨é½ä¼è¢«è®°å½ââå³ä½¿æ¯é误çå½ä»¤ï¼å¦ ww nonexistentï¼ä¹ä¼è¿åå
¶éåºç ä¸å¹¶æè·ãraw_command ååå¨å®æ´çå½ä»¤å符串ï¼ä»¥ä¾¿åç»è§£æ/åæã
