SkillsCoding:CrewAI企业级Agent开发实操&成品分享"

admin 2026-10-20 21:58:25 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

cover_image

SkillsCoding:CrewAI 企业级 Agent 开发实操&成品分享

原创

Lior1969
Lior1969

Moonlight安全

2026年6月2日 21:06
北京

在小说阅读器读本章

去阅读

前半部分:以 menu.md 为导航中枢的传统操作手册 | 后半部分:VibeCoding + 8 个 CrewSkills 自动生成,附 Security Audit Flow 完整实例


一、概念说明

1.1 你的\"Agent 开发地图\":menu.md

在开始编码之前,先打开 agentcrew/menu.md——这是整个 CrewAI 生态的导航地图。它按功能模块组织了所有文档的入口,你只需三步即可完成开发:

menu.md(找功能)→ 对应文档(看实例)→ 复制代码(改参数)→

你的 Agent 就绪

1.2 项目目录结构

本手册基于以下目录结构,所有路径均可直接使用:

agentcrew/
├── menu.md                          # ⭐ 导航中枢(从这里开始)
├── README.md                        # 文档概述
├── docs/
│   ├── getting-started/             # 入门指南
│   │   ├── 01-introduction.md       # 框架简介、Flow/Crew 架构
│   │   └── 02-installation.md       # 安装步骤、项目脚手架
│   ├── core-concepts/               # 核心概念
│   │   ├── 01-agents.md             # Agent 属性、创建方式、工具集成
│   │   ├── 02-tasks.md              # Task 配置、输出格式、Guardrails
│   │   ├── 03-flows.md              # Flow 装饰器、状态管理、路由
│   │   ├── 04-crews.md              # Crew 编排、执行流程、重放
│   │   ├── 05-knowledge.md          # RAG 知识库、向量存储
│   │   ├── 06-memory.md             # 短期/长期/实体记忆
│   │   ├── 07-reasoning.md          # Agent 推理与任务反思
│   │   └── 08-planning.md           # Crew 级任务规划
│   ├── design-guides/               # 设计指南
│   │   ├── 01-evaluating-use-cases.md   # 复杂度-精度矩阵
│   │   ├── 02-first-crew.md             # 第一个 Crew 完整流程
│   │   ├── 03-first-flow.md             # 第一个 Flow 完整流程
│   │   └── 04-customizing-prompts.md    # 提示词自定义
│   ├── tools/                       # 工具集
│   │   ├── 01-file-document.md      # 文件读写、PDF/JSON/CSV
│   │   ├── 02-web-scraping.md       # 网页抓取
│   │   ├── 03-search-research.md    # 搜索与研究
│   │   └── 04-integrations.md       # 外部集成
│   └── observability/               # 可观测性
│       └── tracing.md               # 追踪与监控

1.3 两种开发模式:手动 vs 自动

在实际开发中,你通常会经历两个阶段:

① 学习阶段(第一~九章)——按 menu.md 的导航手动配置 Agent/Task/Crew,深入理解每个参数的作用。适合刚接触 CrewAI 的开发者。

② 加速阶段(第十~十一章)——当理解了核心概念后,切换到 VibeCoding + 8 个 CrewSkills 模式,用自然语言描述需求,AI 自动生成完整项目代码。适合需要快速交付的团队。

💡 建议:先手动理解核心概念(30分钟),再切换到 VibeCoding 模式提效。两种方式不冲突,推荐先手动理解再自动加速。

二、环境部署

2.1 安装 CrewAI

📍 对应文件:docs/getting-started/02-installation.md

# 1. 安装 uv 包管理器
# macOS / Linux
curl -LsSf https://astral.org.cn/uv/install.sh | sh

# Windows PowerShell
powershell -ExecutionPolicy ByPass -c \"irm https://astral.org.cn/uv/install.ps1 | iex\"

# 2. 安装 CrewAI CLI
uv tool install crewai

# 3. 验证
uv tool list
# 输出:crewai v0.102.0

2.2 生成项目脚手架

# 创建 Crew 项目
crewai create crew my_agent_project
cd my_agent_project

# 创建 Flow 项目(如需事件驱动编排)
crewai create flow my_flow_project
cd my_flow_project

2.3 安装依赖

crewai install

# 如需额外包
uv add <package-name>

三、Agent 创建

3.1 快速创建第一个 Agent

📍 对应文件:docs/core-concepts/01-agents.md
📍 menu.md 定位路径:核心概念 → 01-agents.md → \"创建代理\" 章节

操作步骤:打开 menu.md → 找到\"核心概念\"表格 → 点击 01-agents.md → 翻到\"创建代理\" → 复制代码。

YAML 配置方式(推荐)

文件:src/my_project/config/agents.yaml

researcher:
  role: >
    {topic} Senior Data Researcher
  goal: >
    Uncover cutting-edge developments in {topic}
  backstory: >
    You're a seasoned researcher with a knack for uncovering the latest
    developments in {topic}. Known for your ability to find the most relevant
    information and present it in a clear and concise manner.

reporting_analyst:
  role: >
    {topic} Reporting Analyst
  goal: >
    Create detailed reports based on {topic} data analysis and research findings
  backstory: >
    You're a meticulous analyst with a keen eye for detail. You're known for
    your ability to turn complex data into clear and concise reports.

Python 代码定义方式

文件:src/my_project/crew.py

from crewai import Agent
from crewai_tools import SerperDevTool

# 基础研究 Agent
research_agent = Agent(
    role=\"Research Analyst\",
    goal=\"Find and summarize information about specific topics\",
    backstory=\"You are an experienced researcher with attention to detail\",
    tools=[SerperDevTool()],
    verbose=True
)

# 代码开发 Agent
dev_agent = Agent(
    role=\"Senior Python Developer\",
    goal=\"Write and debug Python code\",
    backstory=\"Expert Python developer with 10 years of experience\",
    allow_code_execution=True,
    code_execution_mode=\"safe\",   # Docker 隔离执行
    max_execution_time=300,
    max_retry_limit=3
)

# 推理型 Agent
reasoning_agent = Agent(
    role=\"Strategic Planner\",
    goal=\"Analyze complex problems and create detailed execution plans\",
    backstory=\"Expert strategic planner who methodically breaks down complex challenges\",
    reasoning=True,               # 启用推理
    max_reasoning_attempts=3,
    verbose=True
)

3.2 Agent 属性速查表

📍 来源:docs/core-concepts/01-agents.md 中的属性表

属性 类型 说明
role str Agent 角色定义
goal str 指导决策的个体目标
backstory str 背景故事,丰富交互
llm str/LLM 语言模型,默认 \"gpt-4\"
tools List[BaseTool] 可用工具列表
verbose bool 详细日志,默认 False
allow_delegation bool 允许委托任务,默认 False
reasoning bool 启用任务前推理,默认 False
max_iter int 最大迭代次数,默认 20
max_execution_time int 最大执行时间(秒)
allow_code_execution bool 允许代码执行,默认 False
memory bool 启用记忆,默认 False
cache bool 缓存工具调用,默认 True

四、配置编辑

4.1 创建 Task(任务定义)

📍 对应文件:docs/core-concepts/02-tasks.md
📍 menu.md 定位路径:核心概念 → 02-tasks.md → \"创建任务\" 章节

文件:src/my_project/config/tasks.yaml

research_task:
  description: >
    Conduct a thorough research about {topic}
    Make sure you find any interesting and relevant information given
    the current year is 2025.
  expected_output: >
    A list with 10 bullet points of the most relevant information about {topic}
  agent: researcher

reporting_task:
  description: >
    Review the context you got and expand each topic into a full section for a report.
    Make sure the report is detailed and contains any and all relevant information.
  expected_output: >
    A fully fledge reports with the mains topics, each with a full section of information.
    Formatted as markdown without '```'
  agent: reporting_analyst
  markdown: true
  output_file: report.md

Task 高级特性:Guardrails 输出验证

📍 来源:docs/core-concepts/02-tasks.md → \"任务防护措施\" 章节

from typing import Tuple, Any
from crewai import Task, TaskOutput

# 基于函数的验证
def validate_blog_content(result: TaskOutput) -> Tuple[bool, Any]:
    word_count = len(result.raw.split())
    if word_count > 200:
        return (False, \"Blog content exceeds 200 words\")
    return (True, result.raw.strip())

blog_task = Task(
    description=\"Write a blog post about AI\",
    expected_output=\"A blog post under 200 words\",
    agent=blog_agent,
    guardrail=validate_blog_content,
    guardrail_max_retries=3
)

Task 高级特性:结构化输出

from pydantic import BaseModel

class Blog(BaseModel):
    title: str
    content: str

task = Task(
    description=\"Create a blog title and content on a given topic.\",
    expected_output=\"A compelling blog title and well-written content.\",
    agent=blog_agent,
    output_pydantic=Blog,   # 自动解析为 Pydantic 对象
)

result = crew.kickoff()
print(result.pydantic.title)    # 直接访问结构化字段
print(result.pydantic.content)

4.2 创建 Crew(团队编排)

📍 对应文件:docs/core-concepts/04-crews.md
📍 menu.md 定位路径:核心概念 → 04-crews.md → \"创建团队\" 章节

文件:src/my_project/crew.py

from crewai import Agent, Crew, Task, Process
from crewai.project import CrewBase, agent, task, crew

@CrewBase
class MyCrewProject:
    \"\"\"我的自定义 Crew 项目\"\"\"

    agents_config = 'config/agents.yaml'
    tasks_config = 'config/tasks.yaml'

    @agent
    def researcher(self) -> Agent:
        return Agent(
            config=self.agents_config['researcher'],
            verbose=True,
            tools=[SerperDevTool()]
        )

    @agent
    def reporting_analyst(self) -> Agent:
        return Agent(
            config=self.agents_config['reporting_analyst'],
            verbose=True
        )

    @task
    def research_task(self) -> Task:
        return Task(config=self.tasks_config['research_task'])

    @task
    def reporting_task(self) -> Task:
        return Task(
            config=self.tasks_config['reporting_task'],
            output_file='output/report.md'
        )

    @crew
    def crew(self) -> Crew:
        return Crew(
            agents=self.agents,
            tasks=self.tasks,
            process=Process.sequential,   # 顺序执行
            memory=True,                   # 启用记忆
            planning=True,                 # 启用规划
            verbose=True,
        )

4.3 创建 Flow(事件驱动编排)

📍 对应文件:docs/core-concepts/03-flows.md
📍 menu.md 定位路径:核心概念 → 03-flows.md → \"开始入门\" 章节

from crewai.flow.flow import Flow, listen, start, router
from pydantic import BaseModel

class MyState(BaseModel):
    \"\"\"Flow 状态定义\"\"\"
    input_data: str = \"\"
    result: str = \"\"

class MyFlow(Flow[MyState]):

    @start()
    def step_one(self):
        \"\"\"入口步骤\"\"\"
        print(f\"开始处理: {self.state.input_data}\")
        return self.state.input_data

    @listen(step_one)
    def step_two(self, data: str):
        \"\"\"监听 step_one 的输出\"\"\"
        processed = f\"处理完成: {data}\"
        self.state.result = processed
        return processed

    @router(step_two)
    def decide_next(self):
        \"\"\"条件路由\"\"\"
        if \"error\" in self.state.result:
            return \"failure_route\"
        return \"success_route\"

    @listen(\"success_route\")
    def handle_success(self):
        print(\"✅ 成功\")

    @listen(\"failure_route\")
    def handle_failure(self):
        print(\"❌ 失败\")

flow = MyFlow()
result = flow.kickoff(inputs={\"input_data\": \"Hello Vibe Coding\"})

4.4 启用记忆系统

📍 对应文件:docs/core-concepts/06-memory.md
📍 menu.md 定位路径:核心概念 → 06-memory.md → \"基本记忆系统\"

crew = Crew(
    agents=[...],
    tasks=[...],
    memory=True,   # 一行启用:短期 + 长期 + 实体记忆
    embedder={
        \"provider\": \"openai\",
        \"config\": {\"model_name\": \"text-embedding-3-small\"}
    }
)

4.5 注入知识库(RAG)

📍 对应文件:docs/core-concepts/05-knowledge.md
📍 menu.md 定位路径:核心概念 → 05-knowledge.md → \"基本字符串知识示例\"

from crewai.knowledge.source.string_knowledge_source import StringKnowledgeSource
from crewai.knowledge.source.text_file_knowledge_source import TextFileKnowledgeSource

# 字符串知识源
content = \"Users name is John. He is 30 years old and lives in San Francisco.\"
string_source = StringKnowledgeSource(content=content)

# 文件知识源
file_source = TextFileKnowledgeSource(
    file_path=\"docs/coding-standards.md\"
)

crew = Crew(
    agents=[agent],
    tasks=[task],
    knowledge_sources=[string_source, file_source],
)

4.6 为 Agent 配备工具

📍 对应文件:docs/tools/01-file-document.md、02-web-scraping.md、03-search-research.md
📍 menu.md 定位路径:工具 → 按需选择 → 复制代码

from crewai_tools import (
    FileReadTool,        # 文件读取 → tools/01-file-document.md
    PDFSearchTool,       # PDF 搜索 → tools/01-file-document.md
    JSONSearchTool,      # JSON 搜索 → tools/01-file-document.md
    SerperDevTool,       # 网页搜索 → tools/03-search-research.md
    ScrapeWebsiteTool,   # 网页抓取 → tools/02-web-scraping.md
    GithubSearchTool,    # GitHub 搜索 → tools/03-search-research.md
)

agent = Agent(
    role=\"Document Analyst\",
    tools=[FileReadTool(), PDFSearchTool(), SerperDevTool()],
    goal=\"Process and analyze various document types\"
)

五、调试

5.1 CLI 命令速查

📍 来源:agentcrew/menu.md → \"CLI命令\" 章节

命令 用途
crewai run 运行 Crew 或 Flow
crewai test 测试 Crew 并评估性能
crewai replay -t <task_id> 从指定任务重放执行
crewai log-tasks-outputs 查看最新任务输出
crewai reset-memories 重置记忆
crewai chat 交互式会话调试
crewai train 训练 Crew 指定迭代次数

5.2 调试流程

# 1. 先查看任务输出日志
crewai log-tasks-outputs

# 2. 从失败任务重放
crewai replay -t <task_id>

# 3. 如果需要全新开始
crewai reset-memories

# 4. 交互式排查
crewai chat

5.3 启用可观测性

📍 对应文件:docs/observability/tracing.md
📍 menu.md 定位路径:可观测性 → tracing.md

crew = Crew(
    agents=[...],
    tasks=[...],
    tracing=True,   # 启用内置追踪 → CrewAI AMP 平台
    verbose=True
)

六、发布

6.1 本地运行与测试

# 安装依赖
crewai install

# 本地运行
crewai run

# 运行测试
crewai test

6.2 Git 版本管理

git add src/ .env
git commit -m \"feat: 完成自定义 Crew Agent 开发\"
git push origin main

# 打版本标签
git tag -a v1.0.0 -m \"First release\"
git push origin --tags

6.3 部署到 CrewAI AMP 平台

crewai login
crewai deploy

6.4 团队协作

# 团队成员
git pull origin main
crewai install
# 编辑 .env 填入 API 密钥
crewai run

七、企业级安全管控

7.1 安全防护体系

📍 来源:docs/core-concepts/02-tasks.md → \"任务防护措施\" + docs/core-concepts/01-agents.md → \"安全与代码执行\"

安全五层防护:
┌──────────────────────────────┐
│ 1. Guardrails 输出验证        │  ← 02-tasks.md
│ 2. 代码安全执行 (Docker)      │  ← 01-agents.md
│ 3. MCP 工具过滤              │  ← mcp/mcp.md
│ 4. 工具白名单最小化            │  ← 配置层
│ 5. 审计日志 (tracing)        │  ← observability/
└──────────────────────────────┘

7.2 Guardrails 安全验证

# 多层验证链
task = Task(
    description=\"Write a blog post about AI\",
    expected_output=\"A well-formatted blog post between 100-500 words\",
    agent=blog_agent,
    guardrails=[
        validate_word_count,     # 字数验证
        validate_no_profanity,   # 内容过滤
        format_output            # 格式检查
    ],
    guardrail_max_retries=3
)

7.3 代码安全执行

agent = Agent(
    role=\"Developer\",
    allow_code_execution=True,
    code_execution_mode=\"safe\",   # Docker 隔离 → 生产环境必须
    max_execution_time=300,       # 5 分钟超时
)

7.4 MCP 工具安全

📍 对应文件:docs/mcp/mcp.md
📍 menu.md 定位路径:MCP集成 → mcp.md

agent = Agent(
    role=\"Research Analyst\",
    mcps=[\"https://mcp.exa.ai/mcp?api_key=your_key\"],
    # MCP 支持:Stdio(本地) / SSE(远程流) / HTTP(远程灵活)
)

八、最佳实践

8.1 开发工作流总览

使用 menu.md 的标准开发流程:

1打开 menu.md,找到你要的功能模块

2点击链接跳转到对应 .md 文档

3在文档中找到代码示例,直接复制

4修改 role/goal/backstory 适配你的业务

5crewai run → 验证 → 迭代

8.2 场景速查:从需求到文档的映射

你的需求 menu.md 定位路径 关键文件
我想创建一个会搜索的研究 Agent 核心概念 → 01-agents.md 01-agents.md → \"基本研究代理\"
我想让 Agent 记住上次的结果 核心概念 → 06-memory.md 06-memory.md → memory=True
我想给 Agent 注入公司文档 核心概念 → 05-knowledge.md 05-knowledge.md → StringKnowledgeSource
我想让 Agent 输出结构化 JSON 核心概念 → 02-tasks.md 02-tasks.md → output_pydantic
我想控制任务执行顺序 核心概念 → 04-crews.md 04-crews.md → Process.sequential
我想让 Agent 写代码并执行 核心概念 → 01-agents.md 01-agents.md → \"代码开发代理\"
我想在工作流中加条件分支 核心概念 → 03-flows.md 03-flows.md → @router()
我想自定义 Agent 的提示词 设计指南 → 04-customizing-prompts.md 04-customizing-prompts.md
我想让 Agent 读取 PDF 文件 工具 → 01-file-document.md 01-file-document.md → PDFSearchTool
我想监控 Agent 的执行过程 可观测性 → tracing.md tracing.md → tracing=True

8.3 完整示例:从零创建一个\"技术调研 Crew\"

场景:需要一个会自动搜索、分析、输出 Markdown 报告的技术调研团队。

第 1 步:打开 menu.md,找到需要的功能:

  • Agent 创建 → core-concepts/01-agents.md
  • Task 定义 → core-concepts/02-tasks.md
  • Crew 编排 → core-concepts/04-crews.md
  • 搜索工具 → tools/03-search-research.md

第 2 步:创建项目

crewai create crew tech_research
cd tech_research

第 3 步:编辑 config/agents.yaml(从 01-agents.md 复制模板)

researcher:
  role: >
    {topic} 技术调研专家
  goal: >
    深入调研 {topic} 的最新技术动态,找到最有价值的信息
  backstory: >
    你是一位资深技术调研专家,擅长从海量信息中提取关键洞察。
    你的调研报告总是全面、准确、有深度。
  verbose: true

analyst:
  role: >
    {topic} 技术分析顾问
  goal: >
    基于调研结果,输出结构化的分析报告,包含趋势判断和行动建议
  backstory: >
    你是一位顶级技术顾问,曾为多家 Fortune 500 企业提供技术战略咨询。
    你的分析总是直击要害,让决策者一目了然。
  verbose: true

第 4 步:编辑 config/tasks.yaml(从 02-tasks.md 复制模板)

research_task:
  description: >
    对 {topic} 进行全面调研,重点关注:
    1. 核心技术概念与原理
    2. 最新发展趋势(2025)
    3. 主要应用场景与案例
    4. 头部企业与开源项目
    5. 未来展望
  expected_output: >
    一份结构化的调研笔记,包含以上 5 个维度的详细信息
  agent: researcher

analysis_task:
  description: >
    基于调研结果,撰写一份专业分析报告,包含:
    1. 执行摘要
    2. 技术成熟度评估
    3. 竞争格局分析
    4. 机会与风险
    5. 行动建议
  expected_output: >
    一份格式精美的 Markdown 分析报告
  agent: analyst
  context:
    - research_task
  markdown: true
  output_file: output/report.md

第 5 步:编辑 crew.py(从 04-crews.md 复制模板)

from crewai import Agent, Crew, Process, Task
from crewai.project import CrewBase, agent, crew, task
from crewai_tools import SerperDevTool

@CrewBase
class TechResearchCrew:
    agents_config = 'config/agents.yaml'
    tasks_config = 'config/tasks.yaml'

    @agent
    def researcher(self) -> Agent:
        return Agent(
            config=self.agents_config['researcher'],
            tools=[SerperDevTool()]   # 来自 tools/03-search-research.md
        )

    @agent
    def analyst(self) -> Agent:
        return Agent(
            config=self.agents_config['analyst']
        )

    @task
    def research_task(self) -> Task:
        return Task(config=self.tasks_config['research_task'])

    @task
    def analysis_task(self) -> Task:
        return Task(
            config=self.tasks_config['analysis_task'],
            output_file='output/report.md'
        )

    @crew
    def crew(self) -> Crew:
        return Crew(
            agents=self.agents,
            tasks=self.tasks,
            process=Process.sequential,
            verbose=True
        )

第 6 步:运行

crewai install
crewai run

九、FAQ

Q1:如何快速找到某个功能的实现代码?

A:打开 agentcrew/menu.md,按功能分类定位:

  • 创建 Agent

→ 核心概念表格 → 01-agents.md
* 定义 Task

→ 核心概念表格 → 02-tasks.md
* 编排 Crew

→ 核心概念表格 → 04-crews.md
* 事件驱动 Flow

→ 核心概念表格 → 03-flows.md
* 添加记忆

→ 核心概念表格 → 06-memory.md
* 注入知识库

→ 核心概念表格 → 05-knowledge.md
* 配备工具

→ 工具表格 → 按类型选择
* 启用监控

→ 可观测性表格 → tracing.md

Q2:menu.md 中的文件路径怎么使用?

A:所有路径相对于 agentcrew/ 根目录。例如 menu.md 中写 [01-agents.md](docs/core-concepts/01-agents.md),实际文件在 agentcrew/docs/core-concepts/01-agents.md。

Q3:我应该用 YAML 配置还是 Python 代码定义 Agent?

A:推荐 YAML。YAML 配置更清晰、更易维护、更易团队协作。Python 代码适合需要动态构建 Agent 的场景。

Q4:Crew 和 Flow 应该怎么选?

A:参考 design-guides/01-evaluating-use-cases.md 中的复杂性-精度矩阵:

  • 简单任务

:直接用 Crew(顺序执行即可)
* 需要条件分支/状态管理

:用 Flow 编排 Crew
* 复杂系统

:Flow 编排多个 Crew

Q5:如何让 Agent 记住上次执行的结果?

A:在 Crew 中设置 memory=True,参考 core-concepts/06-memory.md。记忆数据存储在本地 SQLite 中,跨执行持久化。

Q6:Agent 执行超时怎么办?

A:设置 max_execution_time 和 max_iter:

Agent(
    max_execution_time=300,   # 5 分钟超时
    max_iter=15,              # 最多 15 次迭代
)

Q7:如何确保 Agent 输出的格式符合预期?

A:三种方式(参考 02-tasks.md):

  • output_pydantic

:强制 Pydantic 结构化输出
* guardrails

:输出验证函数链
* expected_output

:在 Task 中详细描述期望格式

Q8:如何在现有项目中逐步引入 CrewAI?

A:从最小单元开始:

  1. 先用一个 Agent + 一个 Task 跑通流程
  2. 逐步添加更多 Agent 组成 Crew
  3. 需要复杂编排时引入 Flow
  4. 最后启用 memory 和 knowledge 增强能力

十、VibeCoding Skills 能力体系

10.1 什么是 VibeCoding Skills?

基于本手册的 agentcrew/ 文档体系,我们构建了一套可直接被 Claude Code 加载的 Superpowers 格式 Skills 工具集,覆盖从需求分析到生产部署的完整 VibeCoding 流水线。每个 Skill 都是一个独立的 JSON 配置文件,包含完整的 AI prompt、诊断流程、代码示例和最佳实践。

VibeCoding 六阶段流水线(8 Skills 全覆盖):
┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐    ┌──────────┐
│Brainstorm│ →  │   Plan   │ →  │ CodeGen  │ →  │  Review  │ →  │  Commit  │ →  │  Debug   │
│  需求分析  │    │  架构设计  │    │  代码生成  │    │  代码审查  │    │  规范提交  │    │  诊断修复  │
└──────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘    └──────────┘
                                                                                     ↑
                                                              ┌──────────────────────┤
                                                              │   Observability      │  Deploy  │
                                                              │   可观测性集成        │  发布部署  │
                                                              └──────────────────────┴──────────┘

下一篇文章 展示了Crew编排的代码审计Agent->Security Audit Flow 完整实例

Skills项目地址 https://github.com/8eeth0ven/CrewAI-AgentCodingSkills


SkillsCoding:CrewAI企业级Agent开发实操&成品分享" 网络安全文章

SkillsCoding:CrewAI企业级Agent开发实操&成品分享"

该文档详细介绍了CrewAI企业级Agent开发框架的实操方法,包含手动配置与VibeCoding自动生成两种开发模式。核心内容涵盖环境部署、Agent创建、Task配置、Flow设计等完整开发流程,并提供了SecurityAuditFlow安全审计实例。文档强调以menu.md为导航中枢的项目目录结构,并附带了YAML配置示例、属性速查表等实用资源,为开发者提供从入门到实战的全面指导。
Gemini免费版秒变API:gemini-web2api部署全记录" 网络安全文章

Gemini免费版秒变API:gemini-web2api部署全记录"

gemini-web2api项目将GoogleGemini网页版封装成OpenAI兼容API,无需付费订阅或APIKey即可匿名使用。支持多个Gemini模型包括3.5FlashThinking(最长2万字输出),可通过@think参数控制思考深度。部署简单,支持Python直接运行,提供Cookie配置获取Pro模型。适用于脚本开发、实验测试等非生产环境,实现免费使用Gemini能力。
工具推荐|一款快速、全面、易用的页面信息提取工具" 网络安全文章

工具推荐|一款快速、全面、易用的页面信息提取工具"

本文介绍URLFinder工具,这是一款用于页面信息提取的安全工具,能深度分析JS文件与URL链接,自动提取接口路径、参数及域名信息。工具支持单URL或批量处理,提供多种抓取模式和参数配置,可导出CSV、JSON、HTML格式结果。文档包含工具截图、使用示例及获取方式,同时推广作者的安全免杀相关付费内容。
朝鲜黑客组织升级攻击手段:HTTPSpy木马肆虐,VSCode隧道成新利器" 网络安全文章

朝鲜黑客组织升级攻击手段:HTTPSpy木马肆虐,VSCode隧道成新利器"

朝鲜黑客组织Kimsuky在2026年攻击中升级手段,通过伪造安全软件页面和Webex会议钓鱼传播HTTPSpy木马,并创新性滥用VSCode隧道建立隐蔽C2通道。该组织引入Rust与LLM辅助开发,其恶意软件集群持续演进,针对国防、政府、能源等多行业。建议加强社会工程学防范、监控异常计划任务与VSCode隧道行为,并定期开展安全演练。
评论:0   参与:  0