ð Octop å€çšæ·ç®¡çåºæ¯å®å šæå
äžä»œè¯Šå®ç Octop å€çšæ·äœ¿çšæåïŒæ¶µç管çåè¿ç»Žäžå žååºæ¯æ¡äŸ ð¡
ð ç®åœ
- ð¯ å€çšæ·æ¶ææŠè¿°
- ðšâðŒ 管çååèœå€§å š
- ð€ æ®éçšæ·äœ¿çšäœéª
- ð å žååºæ¯æ¡äŸ
- ð å®å šäžé犻æºå¶
- âïž è¿ç»Žæäœ³å®è·µ
1. ð¯ å€çšæ·æ¶ææŠè¿°
1.1 䞺ä»ä¹ Octop èŠåå€çšæ·ïŒ
äŒ ç»ç AI å©æïŒæ¯åŠäœ çŽæ¥åšç»ç«¯è·äžäžª CLI å·¥å ·ïŒæ¯åçšæ·çââæ°æ®ãé 眮ãè®°å¿å šç»åšäžäžªç³»ç»èŽŠå·äžãð¥²
äœç°å®äžçæ¯è¿æ ·çïŒ
ð åºæ¯äžïŒå®¶åºå
±çšäžå°æå¡åš
âââ çžçžïŒéèŠå€çå·¥äœé®ä»¶ã忥å ð§
âââ åŠåŠïŒåé¥å©æãèŽç©æž
å ð³
âââ å©åïŒåŠä¹ èŸ
富ãäœäžçç ð
ð¢ åºæ¯äºïŒåäžå°å¢é
âââ åå§äººïŒéèŠåžåºåæãç«åè°ç ð
âââ å·¥çšåžïŒä»£ç 审æ¥ãææ¯æ¹æ¡ ð»
âââ è¿è¥ïŒææ¡æ°åãæ°æ®æ¥è¡š ð
ðšâð©âð§ åºæ¯äžïŒè¿çšåå
¬
âââ åå·¥ AïŒçšé£ä¹Šæ¥å
¥ïŒéæ¶æé® ð
âââ åå·¥ BïŒçšééïŒæéäžå ð
âââ å®ä¹ çïŒåªè¯»æéïŒéå¶è®¿é® â ïžOctop çå€çšæ·è®Ÿè®¡å°±æ¯äžºäºè§£å³è¿äºé®é¢ïŒð
1.2 æ žå¿æ¶æ
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â Octop Server â
â (åäžè¿çš ð) â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€
â â
â âââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â UserManager (çšæ·ç®¡ç) â â
â ââââââââââââââââââââââââââââââââââââââââââââââââââ†â
â â â â
â â ð€ çšæ· A âââ HarnessAgentManager âââ Agent 1 â â
â â â âââ Agent 2 â â
â â â âââ Agent 3 â â
â â ð€ çšæ· B âââ HarnessAgentManager âââ Agent 1 â â
â â âââ Agent 2 â â
â â â â
â â ð€ çšæ· C âââ HarnessAgentManager âââ Agent 1 â â
â â â â
â âââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â
â âââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â SharedServices (å
±äº«æå¡) â â
â â âââ SqlitePool (ç»äžæ°æ®åº) â â
â â âââ ExpertCatalog (äžå®¶åº) â â
â â âââ ChannelManager (IM éé) â â
â â âââ CronManager (宿¶ä»»å¡) â â
â âââââââââââââââââââââââââââââââââââââââââââââââââââ â
â â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ1.3 å ³é®è®Ÿè®¡åå
| åå | 诎æ | å¥œå€ |
|---|---|---|
| ð æ°æ®é犻 | æ¯äžªçšæ·æç¬ç«ç Agentãå·¥äœç©ºéŽãè®°å¿ | éç§æä¿é |
| ð è§è²å级 | Admin / æ®éçšæ· 䞀级æé | 管çæåºŠ |
| ð ç»äžååš | å ±äº« SQLite æ°æ®åº | è¿ç»Žç®å |
| ð äŒè¯ç¬ç« | çšæ·éŽå¯¹è¯äºäžå¹²æ° | äœéªæµç |
2. ðšâðŒ 管çååèœå€§å š
2.1 åå§åäžèŽŠå·å建
éŠæ¬¡å®è£ åïŒè¿è¡åå§åå富ïŒ
octop initè¿äžªåœä»€äŒïŒ
- ð å建
~/.octop/æ°æ®ç®åœ - ðïž åå§å SQLite æ°æ®åº
- ð çæ JWT å¯é¥
- ð€ å建第äžäžªç®¡çå莊å·ïŒé»è®€
admin/octopïŒ
â ïž éèŠæç€ºïŒå®è£ åè®°åŸç«å³ä¿®æ¹é»è®€å¯ç ïŒäžèŠçšåŒ±å¯ç ïŒ
2.2 çšæ·ç®¡ç CLI åœä»€
# æ¥çææçšæ·
octop user list
# å建æ°çšæ·
octop user create --username alice --password "Str0ngP@ss!"
# å é€çšæ·ïŒéèŠç¡®è®€ïŒ
octop user delete --username alice
# ä¿®æ¹çšæ·å¯ç
octop user password --username alice --new-password "NewP@ss123"
# æ¥ççšæ·è¯Šæ
octop user info --username alice2.3 Web æ§å¶å°ç®¡ç
åšæµè§åšæåŒ http://127.0.0.1:8088ïŒçšç®¡çå莊å·ç»åœåïŒ
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â âïž è®Ÿçœ®äžå¿ â
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€
â â
â ð¥ çšæ·ç®¡ç â
â ââ ð çšæ·å衚 â
â â ââ ð€ admin (管çå) â â
â â ââ ð€ alice (æ®éçšæ·) â â
â â ââ ð€ bob (æ®éçšæ·) â â
â â ââ ð€ charlie (æ®éçšæ·) â ïž çŠçšäž â
â â â
â ââ â æ·»å çšæ· â
â â ââ çšæ·å: [________] â
â â ââ å¯ç : [________] â
â â ââ è§è²: (â¢) æ®éçšæ· ( ) 管çå â
â â â
â ââ ð§ çšæ·æäœ â
â ââ çŒèŸçšæ· â
â ââ é眮å¯ç â
â ââ å¯çš/çŠçšçšæ· â
â ââ å é€çšæ· â
â â
ââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ2.4 管çåæéæž å
äœäžºç®¡çåïŒäœ å¯ä»¥ïŒ
| æé | 诎æ | CLI åœä»€ |
|---|---|---|
| ð¥ çšæ·ç®¡ç | å建ãå é€ãçŠçšçšæ· | octop user * |
| ð€ Agent 管ç | æ¥çææçšæ·ç AgentïŒäœäžèœæäœå å®¹ïŒ | octop agent list --all |
| ð æž éé 眮 | é 眮 IM æž éïŒé£ä¹ŠãééçïŒ | octop channel * |
| ð 宿¶ä»»å¡ | å šå± Cron è°åºŠ | octop cron * |
| ðŸ æ°æ®å€ä»œ | å€ä»œ/æ¢å€æŽäžªç³»ç» | octop backup * |
| âïž ç³»ç»é 眮 | ä¿®æ¹ç³»ç»çº§é 眮 | octop config * |
2.5 å žå管çæäœç€ºäŸ
åºæ¯ïŒæ°äººå ¥èïŒæ·»å æ°çšæ·
# 1. å建莊å·
octop user create --username david --password "Welcome2024!"
# 2. åé
äžäžªäžå± AgentïŒå讟已æ "coder" AgentïŒ
# åš Web æ§å¶å°ïŒçšæ· david â å
³è Agent "coder"
# 3. é
çœ®è®¿é®æž é
# åš Web æ§å¶å°ïŒäžº david åŒéééè®¿é®æé
# 4. éç¥çšæ·
echo "â
莊å·åå»ºå®æïŒ
çšæ·å: david
åå§å¯ç : Welcome2024!
访é®å°å: http://your-server:8088
è¯·éŠæ¬¡ç»åœåç«å³ä¿®æ¹å¯ç ïŒ"åºæ¯ïŒå工犻èïŒåæ¶èŽŠå·
# 1. çŠçšçšæ·ïŒä¿çæ°æ®ïŒ
octop user disable --username david
# 2. æè
çŽæ¥å é€ïŒæ°æ®äžå¯æ¢å€ïŒïŒ
octop user delete --username david --confirm
# 3. æ£æ¥è¯¥çšæ·ç宿¶ä»»å¡ïŒå é€çžå
³ Cron
octop cron list --user david
octop cron delete <cron-id>3. ð€ æ®éçšæ·äœ¿çšäœéª
3.1 ç»åœäžè®€è¯
æ®éçšæ·éè¿ä»¥äžæ¹åŒè®¿é® OctopïŒ
| æž é | 诎æ | é 眮æ¹åŒ |
|---|---|---|
| ð Web æ§å¶å° | æµè§åšè®¿é®ïŒèŸå ¥çšæ·åå¯ç | é»è®€å¯çš |
| ð¬ 峿¶é讯 | é£ä¹ŠãééãQQãDiscordãäŒäžåŸ®ä¿¡ | 管çåé 眮 |
| âšïž CLI | åœä»€è¡ç»åœ | octop chat --user alice |
ð è®€è¯æµçšïŒ
çšæ·èŸå
¥åè¯
â
JWT Token çæïŒå
å«çšæ·èº«ä»œåæéïŒ
â
Token æææéªè¯
â
ææè®¿é®å¯¹åºèµæº3.2 çšæ·äžå±å·¥äœåº
æ¯äžªçšæ·éœæç¬ç«çå·¥äœç©ºéŽïŒ
~/.octop/
âââ agents/ # Agent é
眮
â âââ <user_alice>/ # Alice ç Agent
â â âââ SOUL.md # Agent æ§æ Œè®Ÿå®
â â âââ AGENTS.md # Agent è¡äžºè§å
â â âââ USER.md # çšæ·ç»å
â â âââ skills/ # æèœé
眮
â â âââ memory/ # é¿æè®°å¿
â âââ <user_bob>/ # Bob ç Agent
â âââ ...
â
âââ memory/ # çšæ·è®°å¿åº
â âââ <user_alice>/
â â âââ atoms/ # ååè®°å¿
â â âââ pages/ # ç¥è¯é¡µé¢
â â âââ raw/ # åå§å¯¹è¯
â âââ <user_bob>/
â âââ ...
â
âââ workspaces/ # å·¥äœç®åœ
âââ <user_alice>/
âââ <user_bob>/3.3 å€ Agent 忢
æ®éçšæ·å¯ä»¥å建å€äžª AgentïŒæåºæ¯åæ¢ïŒ
ð æç Agent å¢é
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â ðŒ å·¥äœå©æ (é»è®€) â
â ââ äžé¿ïŒé®ä»¶å€çãæ¥åæ°åãPPT çæ â
â ââ è¯æ°ïŒäžäžãç®æŽ â
â ââ è®°äœïŒæç项ç®è¿å±ãå¢éæå â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€
â ð³ çŸé£å©æ â
â ââ äžé¿ïŒèè°±æšèã飿æé
ãç¹é¥ªæå·§ â
â ââ è¯æ°ïŒäº²åãçæ
â
â ââ è®°äœïŒæå®¶äººå£å³ãè¿æé£æ â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€
â ð åŠä¹ å¯Œåž â
â ââ äžé¿ïŒç¥è¯ç¹è®²è§£ãä¹ é¢èŸ
富 â
â ââ è¯æ°ïŒèå¿ãæè¶£ â
â ââ è®°äœïŒå©åç幎级ãåŠä¹ è¿åºŠ â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
ð¬ 忢åœä»€ïŒ
"忢å°çŸé£å©æ" æ /agent cook3.4 è®°å¿æä¹ å
Octop çè®°å¿ç³»ç»è®© AI èœè®°äœäœ çå奜ïŒ
ð§ Alice çè®°å¿åº
ð ååè®°å¿ (atom)ïŒ
âââ "alice çé®ç®±æ¯ alice@company.com" â° 2024-01-15
âââ "alice 忬¢å·èïŒäžå蟣" â° 2024-01-20
âââ "alice èŽèŽ£å端åŒå" â° 2024-02-01
ð ç¥è¯é¡µé¢ (page)ïŒ
âââ alice_profile.md - äžªäººä¿¡æ¯æ±æ»
âââ project_roadmap.md - åœå项ç®è¿å±
âââ team_members.md - å¢éæåèµæ
ð¬ 对è¯è®°å¿ (raw)ïŒ
âââ 2024/01/15/ - å
³äº API 讟计ç讚论
âââ 2024/01/20/ - æé€å°ç¹æšè
âââ 2024/02/01/ - Sprint 计åäŒè®®4. ð å žååºæ¯æ¡äŸ
4.1 åºæ¯äžïŒå®¶åºæºèœå©æ ðšâð©âð§
èæ¯ïŒ
- äžå° NAS æå¡åšè¿è¡ Octop
- å®¶åºæåïŒçžçžãåŠåŠãå©å
- å ±çšäžäžªé£ä¹ŠçŸ€èå ¥å£
éšçœ²æ¶æïŒ
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ
â Octop Server â
â (å®¶åº NAS äž) â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ€
â â
â ðš çžçž â
â ââ Agent: å·¥äœå©æ (INTJ - æç¥å®¶) â
â ââ èœåïŒé®ä»¶å€çãPPT æ°åãåžåºåæ â
â ââ æž éïŒé£ä¹Š (å·¥äœçŸ€) â
â â
â ð© åŠåŠ â
â ââ Agent: çæŽ»ç®¡å®¶ (ESFJ - 䞻人) â
â ââ èœåïŒèè°±æšèãèŽç©æž
åãæ¥çšæé â
â ââ æž éïŒé£ä¹Š (å®¶åºçŸ€) + Web â
â â
â ðŠ å©å â
â ââ Agent: åŠä¹ å¯Œåž (ENFP - 远梊人) â
â ââ èœåïŒäœäžççãç¥è¯è®²è§£ãåŠä¹ 计å â
â ââ æž éïŒé£ä¹Š (å®¶åºçŸ€) - éå¶ïŒåªèœåŠä¹ çžå
³ â
â â
â ð€ å
±äº«äžå®¶åº â
â ââ å€©æ°æ¥è¯¢ â
â ââ é¹é讟眮 â
â ââ 玧æ¥è系人 â
â â
âââââââââââââââââââââââââââââââââââââââââââââââââââââââââââ䜿çšç€ºäŸïŒ
ð± é£ä¹ŠçŸ€èïŒ
ðš çžçžïŒ@Octop åž®æåå°é®ä»¶ç»åŒ æ»ïŒç¡®è®€æå€©çäŒè®®æ¶éŽ
â
ð€ [çžçžçå·¥äœå©æ] åå€ïŒ
"已䞺æšèµ·èé®ä»¶ïŒ
äž»é¢ïŒå
³äºææ¥äŒè®®æ¶éŽç¡®è®€
åŒ æ»æšå¥œ...
[åé] [ä¿®æ¹] [åæ¶]"
ð© åŠåŠïŒ@Octop 仿åä»ä¹å¥œïŒå®¶éæçªèãéž¡èãåè±
â
ð€ [åŠåŠççæŽ»ç®¡å®¶] åå€ïŒ
"æšèèåïŒ
ð
çªèçè - ç®åå®¶åžžïŒ10åéæå®
ð¥ é
žèŸ£åè±äž - åŒèäžé¥
ð³ çªèåè±ççè - éèŠå»è¶
åžä¹°çè
请é®éèŠåªäžªèè°±ïŒ"
ðŠ å©åïŒ@Octop è¿éæ°åŠé¢æä¹åïŒ...
â
ð€ [å©åçåŠä¹ 富åž] åå€ïŒ
"è¿éé¢èæ¥çæ¯XXç¥è¯ç¹...
让æäžæ¥æ¥æäœ ïŒ
ç¬¬äžæ¥ïŒ..."管çåé 眮ïŒ
# åå»ºå®¶åºæå莊å·
octop user create --username dad --password "fam1ly2024!"
octop user create --username mom --password "fam1ly2024!"
octop user create --username kid --password "fam1ly2024!"
# é£ä¹Šæž éé
眮ïŒçŸ€æºåšäººïŒ
octop channel install feishu --group-id "family_group"
# 讟眮å©å莊å·ç䜿çšéå¶ïŒéè¿ Tool GuardïŒ
echo "deny: kid -> web_browse: *gaming*"
echo "deny: kid -> tool: external_api: personal_social"4.2 åºæ¯äºïŒåäžå°å¢é ð
èæ¯ïŒ
- 5人åäžå¢é
- ææ¯æ ïŒPython + React
- éèŠ AI èŸ å©ç åãåžåºãè¿è¥
å¢éæ¶æïŒ
ð¢ åäžå¢é AI é
眮
ð 管çå (CEO)
ââ æéïŒå
šéš
ââ AgentïŒæç¥é¡Ÿé® (ENTJ)
ââ è莣ïŒå
šå±ç®¡çãå³çæ¯æ
ð» ææ¯ç»
ââ LeadïŒ1人ïŒïŒåç«¯æ¶æ (INTJ)
ââ DevïŒ1人ïŒïŒå
šæ åŒå (INTP)
ââ Agent å
±äº«ïŒä»£ç 审æ¥ãææ¯è°ç
ð åžåºç»
ââ MarketerïŒ2人ïŒïŒå
容è¿è¥ (ENFP)
ââ Agent å
±äº«ïŒææ¡çæãç«ååæ
ð è¿è¥ç»
ââ OpsïŒ1人ïŒïŒæ°æ®åæ (ESTJ)
ââ Agent å
±äº«ïŒæ¥è¡šçæãæ°æ®æŽå¯Agent åå·¥ïŒ
| Agent | æ§æ Œ | èŽèŽ£é¢å | æé |
|---|---|---|---|
| CodeMaster | INTP - é»èŸå€§åž | 代ç 审æ¥ãææ¯æ¹æ¡ | 读å代ç åº |
| ContentBot | ENFP - åæèŸŸäºº | ææ¡æ°åã瀟亀åªäœ | ååžèçš¿ |
| DataSage | ESTJ - æ§è¡è | æ°æ®åæãæ¥è¡š | åªè¯»æ°æ®åº |
| Researcher | INTJ - çåè | åžåºè°ç ãç«ååæ | 访é®è¡äžæ°æ® |
å¢éåäœç€ºäŸïŒ
ð¬ #dev-channel
åŒåè
ïŒ@CodeMaster åž®æ review è¿æ®µä»£ç
[代ç çæ®µ...]
â
ð€ CodeMaster åå€ïŒ
"åç° 3 䞪é®é¢ïŒ
1. â ïž å
åæ³æŒïŒç¬¬ 45 è¡æªéæŸèµæº
2. ðŽ å®å
šé£é©ïŒçšæ·èŸå
¥æªå SQL è¿æ»€
3. ð¡ äŒå建议ïŒå¯äœ¿çšçŒååå° API è°çš
[æ¥ç宿Žå»ºè®®]"
---
ð¬ #marketing-channel
è¿è¥ïŒ@ContentBot åäžæ¡äº§åååžç埮å
产åïŒæºèœåŸ
å App
亮ç¹ïŒAI åç±»ãè·šå¹³å°åæ¥
â
ð€ ContentBot åå€ïŒ
"ð¥ãæ°åååžãæºèœåŸ
å App äžçº¿ïŒ
ð± AI æºèœåç±»ïŒä»»å¡ç®¡ç仿ªåŠæ€èœ»æŸ
ð è·šå¹³å°å®æ¶åæ¥ïŒææºçµèæ çŒè¡æ¥
ð¯ ææœå³æïŒäŒå
级äžç®äºç¶
ð ç«å³äœéªïŒxxx.com
#æçå·¥å
· #æºèœåŸ
å #产åååž
[ååžå°åŸ®å] [ä¿®æ¹ææ¡] [çææŽå€çæ¬]"å®å šé 眮ïŒ
// config.json - å¢éæéé
眮
{
"security": {
"code_master": {
"allowed_tools": ["read_codebase", "write_codebase", "terminal"],
"denied_paths": ["/production/secrets", "/production/db"]
},
"content_bot": {
"allowed_tools": ["draft_content", "preview"],
"denied_tools": ["terminal", "database"]
},
"data_sage": {
"allowed_tools": ["read_database", "generate_report"],
"denied_tools": ["write_database", "terminal"]
}
}
}4.3 åºæ¯äžïŒè¿çšåå ¬å¢é ð¡
èæ¯ïŒ
- æ··ååå ¬å¢é
- æåååžåšå京ãäžæµ·ãæ·±å³
- 䜿çšééäœäžºäž»èŠæ²éå·¥å ·
æž éé 眮ïŒ
ð è¿çšåå
¬å¢é - æ¥å
¥æž é
ð å京åå
¬å®€
ââ åå·¥ïŒç å 3人ã讟计 2人
ââ æž éïŒéé (å·¥äœæš¡åŒ)
ââ ç¹æ®ïŒå
çœ VPN 访é®éå¶
ð äžæµ·åå
¬å®€
ââ åå·¥ïŒè¿è¥ 2人ãåžåº 1人
ââ æž éïŒéé + Web
ââ ç¹æ®ïŒå·¥äœæ¶éŽ UTC+8 9:00-18:00
ð æ·±å³åå
¬å®€
ââ åå·¥ïŒäº§å 1人ãç å 2人
ââ æž éïŒéé
ââ ç¹æ®ïŒéèŠè®¿é®éŠæž¯æå¡åš
ð å±
å®¶åå
¬
ââ åå·¥ïŒå
šäœïŒèœ®æµïŒ
ââ æž éïŒéé (ç§»åšç«¯äŒå
)
ââ ç¹æ®ïŒæ ç¹æ®éå¶
---
ð æéç©éµïŒ
| æ žå¿ä»£ç | å®¢æ·æ°æ® | èŽ¢å¡æ¥è¡š | è¿è¥åå°
--------|---------|---------|---------|---------
CEO | â
| â
| â
| â
ç å | â
| â | â | â
讟计 | â¡ | â | â | â¡
è¿è¥ | â | â¡ | â | â
åžåº | â | â¡ | â | â¡
产å | â¡ | â
| â | â¡
â
= å®å
šè®¿é® â¡ = åéè®¿é® â = æ 访é®ééé 眮瀺äŸïŒ
# 1. å建ééæºåšäºº
# éé矀 â 矀讟眮 â æºèœçŸ€å©æ â æ·»å æºåšäºº
# éæ©ãèªå®ä¹ãæºåšäººïŒè®°åœ App Key å App Secret
# 2. å®è£
ééæž é
octop channel install dingtalk
# 3. é
眮ééåæ°
export DINGTALK_APP_KEY="ding_xxx"
export DINGTALK_APP_SECRET="xxx"
# 4. 䞺äžåéšéšé
眮äžå Bot
octop channel configure --channel dingtalk \
--bot-name "ç å婿" \
--allowed-users "dev-team" \
--default-agent "code-master"
octop channel configure --channel dingtalk \
--bot-name "è¿è¥å©æ" \
--allowed-users "ops-team" \
--default-agent "ops-helper"
# 5. å¯åšæå¡
octop run4.4 åºæ¯åïŒæè²å¹è®æºæ ð
èæ¯ïŒ
- å¹è®æºæïŒè¯æ°è±äžç§
- æåžïŒ6人
- åŠçïŒçºŠ100人
åºçšåºæ¯ïŒ
ð å¹è®æºæ AI åºçš
ð æåžç«¯
âââ AI å€è¯Ÿå©æïŒçæææ¡ã诟件
âââ äœäžæ¹æ¹èŸ
å©ïŒå¿«éæ£æ¥å¯¹é
âââ å®¶æ ¡æ²éïŒèªåšçæåéŠ
âââ åŠç管çïŒåŠæ
åæ
ð åŠç端
âââ æºèœççïŒ24å°æ¶äœäžå©æ
âââ é颿¬ïŒèªåšåœçº³æŽç
âââ åŠä¹ 计åïŒäžªæ§åæšè
âââ å®¶é¿ç«¯ïŒè¿åºŠéç¥
---
ð§ å
·äœé
眮
ðšâð« æåžèŽŠå·ïŒ6䞪ïŒ
ââ è§è²ïŒteacher
ââ AgentïŒç§ç®äžå®¶ïŒè¯æ/æ°åŠ/è±è¯ïŒ
ââ æéïŒç®¡çèªå·±ç级çåŠçæ°æ®
ââ æž éïŒé£ä¹ŠïŒå·¥äœçšïŒ
ðŠ åŠç莊å·ïŒ100䞪ïŒ
ââ è§è²ïŒstudent
ââ AgentïŒåŠä¹ äŒäŒŽ
ââ æéïŒåªè¯»èªå·±çåŠä¹ å
容
âââ æž éïŒåŸ®ä¿¡å°çšåºïŒå®¶é¿æ«ç ç»å®ïŒ
ðšâð©âð§ å®¶é¿èŽŠå·ïŒ~100䞪ïŒ
ââ è§è²ïŒparent
ââ AgentïŒå®¶åºæè²å©æ
ââ æéïŒæ¥çå©ååŠä¹ æ¥å
âââ æž éïŒåŸ®ä¿¡å°çšåºäœ¿çšç€ºäŸïŒ
ðšâð« è±è¯æèåžïŒ
@Octop åž®æçæäžä»œåäžè±è¯Unit5çææ¡
诟æ¶ïŒ2诟æ¶
éç¹ïŒç°åšè¿è¡æ¶
â
ð€ åå€ïŒ
ð åäžè±è¯ Unit5 ææ¡
ã第äžè¯Ÿæ¶ã...
ã第äºè¯Ÿæ¶ã...
[äžèœœ Word] [å¯Œåº PPT] [è°æŽéŸåºŠ]
---
ðŠ åŠçå°æïŒæ°åŠïŒïŒ
@Octop è¿éé¢äžäŒ
å·²ç¥åœæ° f(x) = x² + 2x + 1
æ± f'(x)
â
ð€ åå€ïŒ
ð æ¥éª€è§£æïŒ
1ïžâ£ è¯å«ïŒè¿æ¯äžéæ±å¯Œæ°çåºç¡é¢
2ïžâ£ åå¿å
¬åŒïŒ(xâ¿)' = n·xâ¿â»Â¹
3ïžâ£ éæ¥è®¡ç®ïŒ
f(x) = x² + 2x + 1
f'(x) = 2x + 2
4ïžâ£ éªè¯ïŒä»£å
¥ x=1, f(1)=4, f'(1)=4 â
ð¡ åç±»é¢æšèïŒ...
---
ðšâð©âð§ å°æçžçžïŒåŸ®ä¿¡å°çšåºïŒïŒ
æ¥çå©åçæ¬åšåŠä¹ æ¥å
â
ð€ åå€ïŒ
ð å°ææ¬åšåŠä¹ æ¥å
ð è¿åºŠïŒæ°åŠå·²å®æç¬¬5ç« 80%
ð éé¢ïŒ3éïŒå·²å å
¥é颿¬ïŒ
â° åŠä¹ æ¶é¿ïŒ8.5å°æ¶
â 衚æ¬ïŒè±è¯åè¯å¬åè¿æ¥ææŸïŒ
[æ¥ç诊æ
] [èç³»èåž]5. ð å®å šäžé犻æºå¶
5.1 JWT å€çšæ·é犻
Octop äœ¿çš JWTïŒJSON Web TokenïŒå®ç°çšæ·è®€è¯åé犻ïŒ
ð JWT è®€è¯æµçšïŒ
1ïžâ£ çšæ·ç»åœ
POST /api/auth/login
{
"username": "alice",
"password": "xxx"
}
2ïžâ£ æå¡åšéªè¯ïŒè¿å Token
{
"access_token": "eyJhbGc...",
"token_type": "bearer"
}
3ïžâ£ åç»è¯·æ±æºåžŠ Token
GET /api/agents
Headers: Authorization: Bearer eyJhbGc...
4ïžâ£ äžéŽä»¶éªè¯ TokenïŒè§£ç çšæ·èº«ä»œ
{
"sub": "alice",
"role": "user",
"exp": 1234567890
}
5ïžâ£ æ°æ®è®¿é®æ§å¶
åªè¿å alice èªå·±çæ°æ®5.2 æ°æ®é犻çç¥
| å±çº§ | é犻å 容 | å®ç°æ¹åŒ |
|---|---|---|
| ð çšæ·æ°æ® | Agentãè®°å¿ãå·¥äœç©ºéŽ | æ°æ®åºè¡çº§é犻 + JWT éªè¯ |
| ð æä»¶ååš | äžäŒ æä»¶ãéä»¶ | çšæ·ç®åœé犻 |
| ð¬ äŒè¯åå² | 对è¯è®°åœ | çšæ·ç»ŽåºŠå衚 |
| â° å®æ¶ä»»å¡ | Cron ä»»å¡ | çšæ·ç»å® + æ§è¡äžäžæé犻 |
| ð æž éç»å® | IM æž éæé | çšæ·-æž éæ å°è¡š |
5.3 Tool GuardïŒå·¥å ·æ€æ ïŒ
Tool Guard å 讞管çåç²Ÿç»æ§å¶æ¯äžªçšæ·/Agent èœäœ¿çšçå·¥å ·ïŒ
ð¡ïž Tool Guard é
眮瀺äŸ
~/.octop/security/tool_guard/
âââ default.rules # é»è®€è§åïŒææçšæ·ïŒ
âââ admin.rules # 管çåè§å
âââ intern.rules # å®ä¹ çè§å
âââ student.rules # åŠçè§åè§åæä»¶ç€ºäŸïŒ
# intern.rules - å®ä¹ çæé
version: "1.0"
allow:
# å¯ä»¥äœ¿çšæçޢ忿¡£å·¥å
·
- tool: web_search
- tool: read_file
- tool: read_docs
# å¯ä»¥è¿è¡æµè¯
- tool: run_tests
# å¯ä»¥è¯»å代碌
- path: /workspace/projects/**
action: read
deny:
# çŠæ¢è®¿é®ç产ç¯å¢
- tool: terminal
path: /production/**
# çŠæ¢æææäœ
- tool: database
operation: [delete, drop, truncate]
# çŠæ¢å€éš API è°çš
- tool: external_api
except: [github, jira]
confirm:
# é«å±æäœéèŠç¡®è®€
- tool: delete_file
- tool: terminal
command: "rm*|delete*|drop*"5.4 PII è±æ
Octop å 眮䞪人信æ¯è¯å«åè±æåèœïŒ
ð PII æ£æµäžå€ç
èŸå
¥ïŒç»ææ¥äžäžåŒ äžç身仜è¯å· 110101199001011234
â
PII æ£æµåšè¯å«
â
è±æå€çïŒèº«ä»œè¯å·è¢«æ 记䞺 [PII_REDACTED]
â
èŸåºïŒç»ææ¥äžäžåŒ äžç身仜è¯å· [PII_REDACTED]
â
æ¥å¿è®°åœïŒç®¡çåå¯è§ïŒïŒæ£æµå° PIIïŒåå§æ°æ®æªè¿å
¥ AI å€çæµç𿝿ç PII ç±»åïŒ
| ç±»å | æ£æµæš¡åŒ | å€çæ¹åŒ |
|---|---|---|
| ð¢ ææºå· | 1[3-9]\d{9} | è±æäžº 138****5678 |
| ð èº«ä»œè¯ | \d{17}[\dXx] | è±æäžº 110101********1234 |
| ð§ é®ç®± | xxx@xxx.xxx | è±æäžº a***@example.com |
| ð³ é¶è¡å¡ | \d{16,19} | è±æäžº **** **** **** 1234 |
6. âïž è¿ç»Žæäœ³å®è·µ
6.1 éšçœ²æ¶æå»ºè®®
ðïž æšèçäº§æ¶æ
âââââââââââââââââââ
â èŽèœœåè¡¡åš â
â (Nginx/LB) â
ââââââââââ¬âââââââââ
â
âââââââââââââââââââŒââââââââââââââââââ
â â â
ââââââââŒâââââââ ââââââââŒâââââââ ââââââââŒâââââââ
â Octop 1 â â Octop 2 â â Octop 3 â
â (Web+API) â â (Web+API) â â (Web+API) â
ââââââââ¬âââââââ ââââââââ¬âââââââ ââââââââ¬âââââââ
â â â
âââââââââââââââââââŒââââââââââââââââââ
â
ââââââââââŒâââââââââ
â SQLite â
â (å
±äº«æ°æ®åº) â
â æ PostgreSQL â
âââââââââââââââââââð æ³šæïŒOctop é»è®€äœ¿çš SQLiteïŒéåäžå°è§æš¡ïŒ<50 çšæ·ïŒãå€§è§æš¡éšçœ²å»ºè®®äœ¿çš PostgreSQLã
6.2 çšæ·ç®¡ç SOP
ð çšæ·çåœåšæç®¡ç SOP
1ïžâ£ å
¥èæµçšïŒOnboardingïŒ
âââ å建莊å·
â octop user create --username <name> --password <temp>
âââ åé
Agent
â octop agent assign --user <name> --agent <role>
âââ é
çœ®æž éæé
â octop channel grant --user <name> --channel <ch>
âââ å鿬¢è¿éç¥
"æšç莊å·å·²å建ïŒè¯·è®¿é® xxx ç»åœ"
2ïžâ£ æ¥åžžäœ¿çš
âââ å®ææ£æ¥æŽ»è·çšæ·
â octop user list --sort last_active
âââ æ¥ç䜿çšç»è®¡
â octop stats --period 30d
âââ å€ä»œæ°æ®
octop backup create --description "weekly"
3ïžâ£ 犻è/è°å²æµçšïŒOffboardingïŒ
âââ çŠçšèŽŠå·ïŒä¿çæ°æ®ïŒ
â octop user disable --username <name>
âââ èœ¬ç§»æ°æ®ïŒåŠéèŠïŒ
â octop data transfer --from <old> --to <new>
âââ æž
ç宿¶ä»»å¡
â octop cron delete --user <name>
âââ æ³šé莊å·ïŒæ°æ®å é€ïŒ
octop user delete --username <name> --confirm6.3 å€ä»œäžæ¢å€
# å建å€ä»œ
octop backup create --description "before-upgrade"
# ååºå€ä»œ
octop backup list
# æ¢å€å€ä»œ
octop backup restore --backup-id <id>
# 宿¶èªåšå€ä»œïŒCronïŒ
octop cron create \
--name "daily-backup" \
--schedule "0 2 * * *" \
--command "backup create --description auto-daily"6.4 çæ§äžæ¥å¿
# æ¥ç宿¶æ¥å¿
octop logs --follow
# æ¥ççšæ·æŽ»åšæ¥å¿
octop logs --user alice --level INFO
# æ¥çé误æ¥å¿
octop logs --level ERROR --since "1 hour ago"
# ç³»ç»ç¶æ
octop status
# èŸåºç€ºäŸïŒ
# ââââââââââââââââââââââââââââââââââââââââ
# â Octop System Status â
# â âââââââââââââââââââââââââââââââââââââââ£
# â Status: â
Running â
# â Uptime: 3d 14h 22m â
# â Users: 12 (3 online) â
# â Agents: 24 active â
# â CPU: 12% â
# â Memory: 2.4 GB / 8 GB â
# â Disk: 45 GB / 100 GB â
# ââââââââââââââââââââââââââââââââââââââââ6.5 æ§èœäŒå
# 1. æ°æ®åºç»Žæ€
octop db vacuum # æž
ç SQLite ç¢ç
octop db analyze # æŽæ°ç»è®¡ä¿¡æ¯
# 2. å
åäŒå
# config.json
{
"performance": {
"max_concurrent_agents": 10,
"agent_timeout_seconds": 300,
"memory_cache_size_mb": 512
}
}
# 3. éå¶å¹¶åçšæ·
octop run --max-users 50
# 4. æž
çè¿ææ°æ®
octop clean --older-than 90d --include-sessionsð éåœ
A. åžžçšåœä»€éæ¥è¡š
| æäœ | åœä»€ | |
|---|---|---|
| å®è£ | `curl -fsSL .../install.sh \ | bash` |
| åå§å | octop init | |
| å¯åšæå¡ | octop run | |
| åå»ºçšæ· | octop user create --username <name> --password <pwd> | |
| æ¥ççšæ· | octop user list | |
| å é€çšæ· | octop user delete --username <name> --confirm | |
| å建 Agent | octop agent create --name <name> --user <user> | |
| é çœ®æž é | octop channel install <feishu/dingtalk/...> | |
| å建å€ä»œ | octop backup create --description "..." | |
| æ¥çæ¥å¿ | octop logs --follow | |
| ç³»ç»ç¶æ | octop status |
B. æž éé 眮åè
| æž é | é 眮项 | ææ¡£ |
|---|---|---|
| é£ä¹Š | App ID, App Secret | docs/channels-feishu.md |
| éé | App Key, App Secret | docs/channels-dingtalk.md |
| Bot AppID, Token | docs/channels-qq.md | |
| Discord | Bot Token | docs/channels-discord.md |
| äŒäžåŸ®ä¿¡ | Corp ID, Agent Secret | docs/channels-wecom.md |
C. æ éææ¥
| é®é¢ | ææ¥åœä»€ | è§£å³æ¹æ¡ |
|---|---|---|
| çšæ·æ æ³ç»åœ | octop logs --user <name> | æ£æ¥å¯ç ãJWT é 眮 |
| æž éæ ååº | octop channel status | æ£æ¥ Tokenãçœç» |
| AI æ åå€ | octop logs --level ERROR | æ£æ¥ API Keyãé¢åºŠ |
| æ§èœå¡é¡¿ | octop status | å¢å èµæºãæž ççŒå |
ð ç»è¯
Octop çå€çšæ·ç®¡çåèœè®©å®äžä» ä» æ¯äžäžª AI å©æïŒæŽæ¯äžäžªå¢éæºèœäžæ¢ ð§
æ 论æ¯å®¶åºäœ¿çšãå°å¢éåäœïŒè¿æ¯äŒäžéšçœ²ïŒOctop éœèœæäŸïŒ
- â åŒç®±å³çšçå€çšæ·æ¯æ
- â çµæŽ»çæé管çäœç³»
- â äž°å¯çæž éæ¥å ¥èœå
- â å¯é çæ°æ®é犻æºå¶
- â ç®æŽçè¿ç»Žç®¡çäœéª
ð å¿«å»è¯è¯å§ïŒ äžè¡åœä»€å³å¯å®è£
ïŒcurl -fsSL https://.../install.sh | bashð
ææ¡£æŽæ°äºïŒ2024幎
ð åºäº Octop v0.9.x çæ¬çŒå