使用说明
🔍 Splunk发现工具
人工智能支持的Splunk环境发现、操作员工作区、安全的外部访问和MCP支持的调查。
✨ 包括什么
- 具有智能工件和稳定兼容性文件名的发现管道(
v2_intelligence_blueprint_*,v2_insights_brief_*,v2_operator_runbook_*,v2_developer_handoff_*) - 具有任务、情报、发现、上下文、功能和重点聊天/摘要界面的统一网络工作区
- 持久的工作支持运行时状态,用于发现和摘要,包括持久的进度和重启安全恢复
- AI摘要端点(
/summarize-session)生成上下文SPL查询、调查跟踪和管理任务 - 管理SPL库和本地RAG上下文工作区,用于可重用的查询和面向操作员的知识资产
- 可选的本地身份验证、OIDC登录、每个用户的MCP分配和管理员管理的外部令牌发放
- 只读外部RAG REST API和入站MCP表面(HTTP加stdio桥)
- 具有MCP工具别名和强大工具调用解析的确定性+代理聊天流
- 使用Fernet加密凭证/配置存储(无明文秘密)
- Windows通用安装程序(
install.ps1)以及Unix/macOS(install.sh)
📋 先决条件
必需
- Python 3.8+
- 点
- PowerShell 7+(仅限Windows,如果使用
install.ps1)
外部服务
- Splunk MCP服务器端点+承载令牌
- 所选后端(OpenAI、Azure OpenAI、Anthropic、Gemini或自定义端点)的LLM提供者密钥
🚀 快速开始
视窗
.\install.ps1
Unix/macOS
chmod +x install.sh
./install.sh
启动后,打开控制台中打印的URL(通常 http://localhost:8003).
⚙️ 首次配置
- 在控制台中显示的启动URL打开应用程序(默认
http://localhost:8003) - 点击设置(齿轮图标)
- 配置:
- MCP URL/令牌/SSL设置
- LLM提供程序/API密钥/端点URL(如果需要)/模型/令牌限制
- Web服务器选项(端口、调试模式)
- 可选的安全/身份验证设置、外部API暴露和OIDC提供程序详细信息
- 保存设置并重新启动服务
LLM设置说明
- 支持的提供商:
openai,azure,anthropic,gemini,custom - 以下项需要终结点URL:
azure,custom - 终结点URL可选覆盖:
anthropic,gemini - 对于
custom,您可以使用基本URL(例如http://host:port/v1);该应用程序自动解析常见的完成路径。 - 使用 测试连接和自动配置 在要运行的设置中:
- 连接探针,
- 模型生成测试,
- 提供者安全令牌推荐。
🧠 工作区概述
- 使命:当前发现切换、快照增量、管理员下一步操作、分析师跟踪和执行框架
- 智能:蓝图简报、优先级板、覆盖差距和角色适应的操作员读数
- 发现:实时运行时监视器、阶段分类账、持久会话输出和摘要启动/恢复控制
- 上下文:托管知识资产、SPL库、可重用查询证据和面向操作员的上下文预览
- 能力:RAG、导出、可视化和Splunk深度链接工作流的可选包
- 聊天和总结:当操作员需要深入时,全屏调查聊天加上生成的runbook/摘要界面
📸 当前工作区快照
首次运行splash和工作区shell
任务工作区
情报工作区
📸 SPL库工作流
SPL库将可重用的SPL保存在托管上下文工作区中,因此操作员可以保存聊天中的良好查询,检查存储的上下文,并在不离开工具的情况下重用保存的SPL。
保存聊天中的查询
浏览SPL库
检查存储资产详细信息
在聊天中重用库上下文
🔐 安全
- 可选的本地用户名/密码身份验证,具有首次登录密码重置流程
- OIDC登录,提供提供商元数据、声明映射和本地用户链接支持
- 每个用户的MCP分配以及管理员管理的连接、用户和令牌控制
- 带有作用域令牌和速率限制的只读外部RAG REST API和入站MCP访问
- 静态加密凭据(
config.encrypted,.config.key) - 无明文秘密持久性
- 可配置的SSL验证和CA捆绑包支持
- 通过服务器设置提供主机/CORS保护
📁 关键路径
install.ps1 / install.sh Installer + service control
src/main.py Runtime entrypoint
src/web_app.py FastAPI API + frontend delivery/runtime orchestration
src/frontend_legacy_template.html Source-of-truth frontend template
src/frontend_legacy.py Frontend template loader for runtime and build tooling
src/static/ Shipped local frontend bundle
src/discovery/v2_pipeline.py Discovery pipeline + artifact packaging
src/config_manager.py Encrypted config manager
src/security_manager.py Local auth, OIDC, sessions, roles, and token management
src/runtime_job_worker.py Detached worker entrypoint for durable discovery/summary jobs
tools/build_frontend.mjs Rebuild shipped frontend assets from src/frontend_legacy_template.html
tools/check_frontend_sync.py Validate frontend bundle sync before release
tools/test_auth_browser.mjs Browser auth/OIDC regression harness
tools/run_account_function_tests.mjs Account/auth regression entrypoint
.github/workflows/repo-validation.yml GitHub Actions validation workflow for repo quality gates
output/ Discovery and summary artifacts
📚 文档
此存储库中面向公众的文档:
README.md--安装、配置、运行CHANGELOG.md--发布历史和显著变化CONFIGURATION_VARIABLES.md--配置参考docs/DEVELOPER_REFERENCE.md--开发人员扩展/参考指南docs/AUTH_TESTING.md--本地密码、OIDC和帐户功能测试指南docs/EXTERNAL_RAG_API_QUICKSTART.md-只读外部RAG API设置和示例docs/EXTERNAL_MCP_QUICKSTART.md--入站MCP设置、辅助客户端和stdio网桥使用docs/SECURITY_ACCESS_ROADMAP.md--已发布的国家安全模型及其扩展说明docs/DISCOVERY_ARCHITECTURE_GUIDE.md--发现架构和迁移指导
✅ 验证
在激活的虚拟环境中,主要的本地版本检查包括:
npm run build:frontend
python tools/check_frontend_sync.py
npm run test:browser
npm run test:auth-browser
npm run test:account-functions
python -m ruff check src tests
python -W error::SyntaxWarning -m compileall -q src tests
python -m unittest discover -v
🛠️ 安装程序命令
| 命令 | 描述 |
|---|---|
(no arguments) |
安装依赖项并启动服务 |
--public_only / -PublicOnly |
仅使用公共PyPI安装(跳过私有/本地索引) |
--start / -Start |
启动服务 |
--stop / -Stop |
停止服务 |
--restart / -Restart |
重新启动服务 |
--status / -Status |
显示状态 |
--uninstall / -Uninstall |
卸载 |
--help / -Help |
显示帮助 |
🐛 故障排除
端口8003已在使用中
该应用程序现在会自动尝试安全端口回收/回退。如果需要,请使用安装程序命令重新启动:
.\install.ps1 -Restart
Windows脚本执行被阻止
Set-ExecutionPolicy -Scope CurrentUser -ExecutionPolicy RemoteSigned
MCP连接错误
- 在设置中验证URL/令牌
- 切换SSL验证或为私有证书链设置CA捆绑包
pip安装超时/ repo.splunkdev.net 不可达
- 一些系统配置了全局/私有pip索引;如果该索引不可用,依赖项安装可能会超时。
- 安装程序现在会自动重试公共PyPI(
https://pypi.org/simple). - 要立即绕过私有/本地索引,请使用安装程序的仅限公共标志:
./install.sh --public_only
.\install.ps1 -PublicOnly
- 如果需要,在重新安装之前,强制当前shell会话使用PyPI:
export PIP_INDEX_URL=https://pypi.org/simple
./install.sh
$env:PIP_INDEX_URL = "https://pypi.org/simple"
.\install.ps1
前端更改未显示或启动程序警告过时资产
- 已发货的UI由以下签入文件提供
src/static/. - 在中编辑前端源模板后
src/frontend_legacy_template.html,重建并验证已发货的捆绑包:
npm run build:frontend
python tools/check_frontend_sync.py
- 要运行可视化预览的确定性浏览器回归,请安装Chromium测试浏览器一次并运行:
npx playwright install chromium
npm run test:browser
- 要验证启用身份验证的流和帐户函数矩阵,请运行:
npm run test:auth-browser
npm run test:account-functions
🤝 贡献
欢迎通过pull请求进行贡献。回购验证也反映在 .github/workflows/repo-validation.yml,它在GitHub托管的运行器上运行记录在案的前端构建、同步、浏览器回归、身份验证/帐户检查、lint、编译和单元测试门。
📄 许可证
MIT。看 许可证.
