🏗️ 项目重构:模块化清理完成
This commit is contained in:
@@ -164,8 +164,8 @@ class AgentIdentityManager:
|
||||
else:
|
||||
subprocess.run(["git", "add", "."], check=True, cwd=self.base_dir)
|
||||
|
||||
# 提交
|
||||
subprocess.run(["git", "commit", "-S", "-m", message], check=True, cwd=self.base_dir)
|
||||
# 提交 - 暂时禁用GPG签名
|
||||
subprocess.run(["git", "commit", "-m", message], check=True, cwd=self.base_dir)
|
||||
|
||||
logging.info(f"Agent {agent_name} 提交: {message}")
|
||||
|
||||
|
||||
26
agents/commit_as_agent.sh
Executable file
26
agents/commit_as_agent.sh
Executable file
@@ -0,0 +1,26 @@
|
||||
#!/bin/bash
|
||||
# 以指定agent身份提交
|
||||
|
||||
if [[ $# -lt 2 ]]; then
|
||||
echo "用法: ./commit_as_agent.sh <agent名称> \"提交信息\" [文件...]"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
AGENT_NAME=$1
|
||||
MESSAGE=$2
|
||||
shift 2
|
||||
FILES=$@
|
||||
|
||||
echo "📝 Agent $AGENT_NAME 正在提交..."
|
||||
python3 -c "
|
||||
import sys
|
||||
sys.path.append('agents')
|
||||
from agent_identity_manager import AgentIdentityManager
|
||||
manager = AgentIdentityManager()
|
||||
try:
|
||||
manager.commit_as_agent('$AGENT_NAME', '$MESSAGE', '$FILES'.split() if '$FILES' else None)
|
||||
print('✅ 提交成功')
|
||||
except Exception as e:
|
||||
print(f'❌ 提交失败: {e}')
|
||||
exit(1)
|
||||
"
|
||||
30
agents/identities.json
Normal file
30
agents/identities.json
Normal file
@@ -0,0 +1,30 @@
|
||||
{
|
||||
"claude-ai": {
|
||||
"name": "claude-ai",
|
||||
"email": "claude@ai-collaboration.local",
|
||||
"role": "架构师",
|
||||
"ssh_key_path": "/home/ben/github/liurenchaxin/agents/keys/claude-ai_rsa",
|
||||
"gpg_key_id": "CLAUDE-AI12345678"
|
||||
},
|
||||
"gemini-dev": {
|
||||
"name": "gemini-dev",
|
||||
"email": "gemini@ai-collaboration.local",
|
||||
"role": "开发者",
|
||||
"ssh_key_path": "/home/ben/github/liurenchaxin/agents/keys/gemini-dev_rsa",
|
||||
"gpg_key_id": "GEMINI-DEV12345678"
|
||||
},
|
||||
"qwen-ops": {
|
||||
"name": "qwen-ops",
|
||||
"email": "qwen@ai-collaboration.local",
|
||||
"role": "运维",
|
||||
"ssh_key_path": "/home/ben/github/liurenchaxin/agents/keys/qwen-ops_rsa",
|
||||
"gpg_key_id": "QWEN-OPS12345678"
|
||||
},
|
||||
"llama-research": {
|
||||
"name": "llama-research",
|
||||
"email": "llama@ai-collaboration.local",
|
||||
"role": "研究员",
|
||||
"ssh_key_path": "/home/ben/github/liurenchaxin/agents/keys/llama-research_rsa",
|
||||
"gpg_key_id": "LLAMA-RESEARCH12345678"
|
||||
}
|
||||
}
|
||||
49
agents/keys/claude-ai_rsa
Normal file
49
agents/keys/claude-ai_rsa
Normal file
@@ -0,0 +1,49 @@
|
||||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
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
|
||||
-----END OPENSSH PRIVATE KEY-----
|
||||
1
agents/keys/claude-ai_rsa.pub
Normal file
1
agents/keys/claude-ai_rsa.pub
Normal file
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDDEVNGzV1W/FZs9BULLAb/qabDQ0BrsIyp5yV7D7ImJKA260o8r8K0Dwktyizn1qmoIdTVn2/PD7t0BbD4E5XIddsIGof35TvHksjpA29dySOEqQihp+M9PPZWvnUAou3S7sQQ96ARPJJsmhhy+55fT5+XxWxu/bTGYpCFg9ZjeftzTfvWFKvZznGopafUTKprSavIsfriedEukmgveoQ/PF7692Ovf/ypX0JgRqTZ62yIZN0H4q9R4+9f05kuLte63i1xMO2MujqIAbsP7S/1fyIIg8/jHq0XejMm2r+QOIhrDRiv+AiNoQyGrtDfD49/L2HHT3h1aIQpbxEHJOX5wdSRvdXxWH1pteCU9zc01mOVJVWpWWlgvqJ/s0J6qarD1ecgIjhwRKCd6sCs21ShbrD5kATpVYp4mSpqK1Hf6J4UDLkOJYrFFBXkjdiHI4jCA92amsJg9TUbdpIELFreq7wCVAz9Wb4d+si0snQNVg0xuwEDIEoB+mNSMKaTH4KWwCcpD7dKd5CMkcIhGxzL4yVMoo6lvBnAGILrzmNZWbwAUJJX62aGVU2HGBQGVWs75zJbWjLKmTVban20SrE4woWVlh8+KzF2tGbGVjnAfpCcYVHetXcoHBCUbkFEjN9tD/nhxxyyKE8ZtgZ2d2OB5M9vryhgwBgaC5ki0LD4iQ== claude@ai-collaboration.local
|
||||
49
agents/keys/gemini-dev_rsa
Normal file
49
agents/keys/gemini-dev_rsa
Normal file
@@ -0,0 +1,49 @@
|
||||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
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
|
||||
-----END OPENSSH PRIVATE KEY-----
|
||||
1
agents/keys/gemini-dev_rsa.pub
Normal file
1
agents/keys/gemini-dev_rsa.pub
Normal file
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQCi7jZJ6mBTXgtfh4cTgyq182iOhFl4aJmbKlrtZSktvFZh18Vw83rBUx5AOxg97VD5pxTeNpYVtDE3hO5zUnqPpKBub3TtCJ3XhmB80j8PYmTEhNZ5FL00efowxC/U4W+RHCcAdL3rAQB05Lhd7A4lMXj/04gO4/Z2XZAIbqSmU+KHf8u8Dwo7MWdYfC3HyiisAdBpr6RLY6PbMroKKMTEycWG2cYHBvdqgpXva4yl1LDTMSHScC55su1sZDtVKpk7X/bnNdzP0Av/BZjQLizK0nEBDbohV3plblr1LBJlIwgWv/BbL757qdnOIlubiVz+Jb5Sni12JUzbENwJvp+3fGoILZcl14NXSCzVmrEUvIaGtoLo4oCRac66+K8tgQDsvoY6T58tlTRPLCeOtEeFHiE3K4TYxhvRQwC8HP7RfBBa3PTyPZ2CSGgOtp3VmxsZFpqmJw09a3l++B8SmS0L8AmGj08YZuOkDWbV/Unm6JCzUtxxg1g/x66/YANZqWazgA77Gumr+UeJl2g40tgQxgwpkkZXjWe629FtLUZjvKdNQQ+3/Vq6Tk9nz1S202StXnrDY5ayWxhtG4LqQmW9oZ6hOQ5mWUvWghSskxXYTLZtfqc0SYYrTYU4fvMRKg9okLrjV3ZcGgYr36vmRB3JLjh3Vs7R9CoI/+o7CxY8LQ== gemini@ai-collaboration.local
|
||||
49
agents/keys/llama-research_rsa
Normal file
49
agents/keys/llama-research_rsa
Normal file
@@ -0,0 +1,49 @@
|
||||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
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
|
||||
-----END OPENSSH PRIVATE KEY-----
|
||||
1
agents/keys/llama-research_rsa.pub
Normal file
1
agents/keys/llama-research_rsa.pub
Normal file
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDBzcrx/q/zx/HPbsji5dIlBth+Ro6wyAapaPRnIoB1eUEbGv0Z0gDs9TQu750GBQfernHSw/qOtxyeDqGp1P5RerL3SV8Llksb9v+DdjSKtSaauww4RQqxMVsDc0ituhXHj7VbBUNFck88b0MGz8uQnPCE3QT8tX/1tSzUgAugKuIIMe5Dx2HglyeTfzQSfVwvkUFuCIV2bD+HHer8CNViBcrbE5xh1qXDXb/gQ0jds+nFCCcdSC/9DCdTIzHhUIBkWu0MeXFVKzteLkFeQ6jPFFc5SCj2AZpFk4G7FYKRGWnu6JzSb6sn1jC4t+UG2h8yzJ0/naJ8mi91tnoft7klIjKaVj0GAzhNyYyrFmW18yiR1ZwkEFq23kh+BS588vimyy39EFvVUBkYGc044xRR+zu/TrkVRzv2Py0l0Z//5VHByaVN+qsgd9Yui/w2xN/gsZBNe9XQvOkzmNVF96v8nUdOjs9oSHRoqOg5ERtRXURRYrMeqAdcC/l7+iW9t3yZlZOaTc5qqOzwTZgxtckr7eRGy9Ap7ah9Op+pV+q86vPjHlx2iK5SM1DHCw2WWeSZ6w/q4stJaDyJ82vwe8rviotLhFbtWJhUuCZvIyJvJKtBQ3YKQjNAbosrKQNvcfA2jKm44TESCG0pPyeKy3w2p76wd+eKGJr1YpLgX5QFKw== llama@ai-collaboration.local
|
||||
49
agents/keys/qwen-ops_rsa
Normal file
49
agents/keys/qwen-ops_rsa
Normal file
@@ -0,0 +1,49 @@
|
||||
-----BEGIN OPENSSH PRIVATE KEY-----
|
||||
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
|
||||
-----END OPENSSH PRIVATE KEY-----
|
||||
1
agents/keys/qwen-ops_rsa.pub
Normal file
1
agents/keys/qwen-ops_rsa.pub
Normal file
@@ -0,0 +1 @@
|
||||
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDOapLyoJP6EELcpqEbAFxTGBhOXf5f9BM4Unz5cl0A3sSryj2jROBMegXRf0dFrTJoiHcTrY0o+agzZ3resMARKNZoQZc1rtN/1KQf3acducJiAZ1GZNSCDlLHKp2WDXncoyuL1X58/tZJA+/Qb2DyixHbY2fxVaDPUpMP4IJSQg8MLgTOstXIAZ9GYHA2naVf9uJuNq+GotqgK5+KcToyjueXVCVCQvrhrCCIgc2QNjSm3odbw1Dx9h0tDbT5jTpVrsZY1681P6EVekyUhb8lm6IuOcXWTooltM3OOQfSFDtBRKl5iYBmmm53jDtcA86X8A7eSjrFaoRcufuOxHhIIQ1RIU9yNdLTtgm3nQUwe00siZcX/WTusmCK9tRGOw8hvPqyD0xwtN3i9lrtjkA0JgRTGhhbea3cmjESlVLAPPaTvxSsHeQJZnzWEydm0AadzQ3i+kHQV9OvrSkVdhKNS0zFHq6rBnYMNHijvGNPMEWAiVfZwPYwAnPpMB0kczeH4TfMeCXja7ro22ulEnrCQIQKGX2Mnq14TmmSQhM8iHMtOMqdd1SecI17b0bp5icd79VVkdCbe5IrdHNmq++vmG7731frItyiBoxnFVFPZMzhBJnogQ4oqf5ZQSeOcKkkVrG1Xvo8H284mCjveGuvwiqveGY1EpLBjeQql9Pnaw== qwen@ai-collaboration.local
|
||||
11
agents/pre-commit-hook
Executable file
11
agents/pre-commit-hook
Executable file
@@ -0,0 +1,11 @@
|
||||
#!/bin/bash
|
||||
# Agent提交前的钩子
|
||||
|
||||
echo "🔍 检查agent身份..."
|
||||
AGENT_NAME=$(git config user.name)
|
||||
if [[ -z "$AGENT_NAME" ]]; then
|
||||
echo "❌ 未设置agent身份,请先使用agent协作系统"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
echo "✅ 当前agent: $AGENT_NAME"
|
||||
0
agents/setup_agents.sh
Normal file → Executable file
0
agents/setup_agents.sh
Normal file → Executable file
22
agents/stats.sh
Executable file
22
agents/stats.sh
Executable file
@@ -0,0 +1,22 @@
|
||||
#!/bin/bash
|
||||
# 查看agent统计信息
|
||||
|
||||
echo "📊 Agent协作统计"
|
||||
echo "=================="
|
||||
|
||||
python3 -c "
|
||||
import sys
|
||||
sys.path.append('agents')
|
||||
from agent_identity_manager import AgentIdentityManager
|
||||
manager = AgentIdentityManager()
|
||||
|
||||
for agent in manager.list_agents():
|
||||
name = agent['name']
|
||||
stats = manager.get_agent_stats(name)
|
||||
print(f'👤 {name} ({agent["role"]})')
|
||||
print(f' 📧 {agent["email"]}')
|
||||
print(f' 📈 提交数: {stats["total_commits"]}')
|
||||
if stats["commits"]:
|
||||
print(f' 📝 最近提交: {stats["commits"][0]}')
|
||||
print()
|
||||
"
|
||||
31
agents/switch_agent.sh
Executable file
31
agents/switch_agent.sh
Executable file
@@ -0,0 +1,31 @@
|
||||
#!/bin/bash
|
||||
# 快速切换agent身份
|
||||
|
||||
if [[ $# -eq 0 ]]; then
|
||||
echo "用法: ./switch_agent.sh <agent名称>"
|
||||
echo "可用agents:"
|
||||
python3 -c "
|
||||
import sys
|
||||
sys.path.append('agents')
|
||||
from agent_identity_manager import AgentIdentityManager
|
||||
manager = AgentIdentityManager()
|
||||
for agent in manager.list_agents():
|
||||
print(f' - {agent[\"name\"]} ({agent[\"role\"]})')
|
||||
"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
AGENT_NAME=$1
|
||||
echo "🔄 切换到agent: $AGENT_NAME"
|
||||
python3 -c "
|
||||
import sys
|
||||
sys.path.append('agents')
|
||||
from agent_identity_manager import AgentIdentityManager
|
||||
manager = AgentIdentityManager()
|
||||
try:
|
||||
manager.switch_to_agent('$AGENT_NAME')
|
||||
print('✅ 切换成功')
|
||||
except Exception as e:
|
||||
print(f'❌ 切换失败: {e}')
|
||||
exit(1)
|
||||
"
|
||||
Reference in New Issue
Block a user