AI辅助开发时代的安全基线模板:从零构建生产就绪的代码仓库

news2026/5/3 6:05:59
1. 项目概述一个为AI辅助开发时代量身定制的安全基线模板如果你是一名独立开发者、创业团队的早期成员或者正在利用AI工具比如Claude Code、Cursor、Copilot来加速你的编码过程那么你一定遇到过这样的困境代码写得飞快但项目的基础设施却漏洞百出。你可能已经习惯了在本地创建一个.env文件来存放密钥却忘了把它加入.gitignore结果一次不经意的提交就把你的API密钥暴露在了GitHub上你可能从未设置过分支保护某次git push -f操作就可能抹掉重要的提交历史你的CI/CD流程可能还停留在“本地跑通就行”的阶段导致问题直到部署后才被发现。这些问题在传统的、有资深工程师带领的团队里通常由一套成熟的工程实践和自动化流程来解决。但对于独立开发者或小型团队来说获取并配置这套“机构知识”的门槛极高。vbonk/repo-template这个GitHub模板项目就是为了解决这个痛点而生的。它不是一个简单的代码脚手架而是一个集成了安全基线、CI/CD流水线、AI助手配置和项目治理的“虚拟资深工程师”旨在让你在写下第一行业务代码之前就拥有一个生产就绪、安全合规的代码仓库基础。它的核心价值在于将那些容易被忽视但至关重要的“隐性知识”——比如如何防止密钥泄露、如何配置有效的代码审查流程、如何让AI助手更好地理解你的项目上下文——固化为一套可一键部署的配置文件和自动化脚本。无论你使用Node.js、Python、Go还是Rust无论你偏爱Claude、Cursor还是Copilot这个模板都提供了开箱即用的支持让你能专注于创造价值而非重复搭建基础设施。2. 核心设计理念与架构解析2.1 为什么是“AI-First”的模板当前AI编码助手已成为许多开发者的生产力倍增器。然而AI生成的代码在安全性和最佳实践方面存在显著风险。研究表明AI生成的代码包含漏洞的概率高达40-62%许多由AI构建的应用甚至缺少基础的CSRF防护或安全头部。更关键的是超过40%的初级开发者会部署他们不完全理解的AI生成代码。传统的项目模板主要关注技术栈如React、Django而vbonk/repo-template的设计哲学是“AI-First”。这意味着它优先考虑了在AI辅助开发工作流中可能出现的独特问题上下文缺失AI助手每次开启新会话时对你的项目结构、代码规范、安全边界都一无所知需要反复解释。安全盲区AI可能无意中生成包含硬编码密钥、使用不安全依赖的代码而开发者缺乏自动化的检查手段。流程失范在快速迭代中传统的代码审查、测试、部署流程容易被绕过。因此该模板内置了对7种主流AI助手Claude Code, GitHub Copilot, Cursor, OpenAI Codex, Google Gemini, Windsurf, Aider的配置文件。这些文件不是捆绑销售的套餐而是独立的、可选的。如果你只用Copilot那么只保留.github/copilot-instructions.md即可。这些文件的作用是主动向AI助手“介绍”你的项目目录结构是怎样的、运行测试用什么命令、哪些文件绝对不能提交。这相当于为你的AI助手配备了一份详尽的“新员工入职手册”让它从第一次交互开始就能高效、安全地工作。2.2 多层次防御的安全架构安全是该模板的基石。它构建了一个从本地到远程、从提交前到合并后的多层次防御体系而非依赖单一检查点。第一层本地提交前拦截Pre-commit Hook这是最有效、成本最低的防线。模板提供了templates/hooks/setup-hooks.sh脚本安装一个Git预提交钩子。这个钩子会使用gitleaks等工具扫描暂存区的文件检查是否有API密钥、数据库连接字符串、私钥等敏感信息。一旦发现提交将被立即阻止。这确保了秘密永远不会进入版本历史从源头上杜绝了泄露。注意许多开发者知道.gitignore要忽略.env但常常忽略其他敏感文件如config/local.yaml、secrets.json或IDE配置文件。该模板的.gitignore文件是经过精心编排的覆盖了数十种常见的敏感文件模式和临时文件为你的项目提供了第一道广谱防护。第二层拉取请求PR自动化扫描即使本地钩子被绕过比如用了--no-verify参数第二道防线会在GitHub上生效。模板配置的GitHub Actions工作流CI和启用的GitHub高级安全功能如Secret Scanning会对每个PR进行扫描。如果检测到疑似密钥会直接在PR界面发出警告甚至阻止合并。这为团队协作增加了一道安全网。第三层仓库设置与分支保护这是针对仓库本身配置的防护。通过运行scripts/secure-repo.sh脚本可以一键启用多项关键保护分支保护规则禁止直接向主分支如main推送强制所有更改通过PR进行禁止强制推送force push防止历史被篡改或覆盖要求PR在合并前通过CI检查。标签保护防止版本标签被意外删除。合并后自动删除分支保持仓库分支列表的整洁。启用Dependabot自动监控项目依赖中的安全漏洞并创建修复PR。这三层防御构成了一个纵深防御体系极大地降低了因人为疏忽或工具误用导致的安全事件概率。2.3 模块化与可组合的CI/CD流水线模板中的CI/CD配置位于.github/workflows/ci.yml采用了高度模块化的设计。它没有假设你的技术栈而是为Node.js/TypeScript、Python、Go、Rust、Bun等主流语言都提供了预设的构建、测试、检查步骤但它们默认是被注释掉的。你需要做的就是根据你的项目取消对应语言块的注释。例如一个Python项目只需取消Python部分的注释CI流程就会自动执行pip install、pytest和ruff代码检查。这种设计避免了“一刀切”带来的冗余或错误确保了CI流程的轻量和精准。此外该工作流严格遵守GitHub Actions的安全最佳实践使用SHA锁定Action版本工作流中引用的第三方Action如actions/checkout都使用了完整的Git提交SHA而非标签如v4。这可以防止攻击者通过劫持标签指向恶意版本来进行供应链攻击。最小权限原则工作流中显式设置了permissions只授予完成作业所需的最小权限而不是默认的宽泛权限。超时控制设置了作业级别的超时如30分钟防止因代码或配置错误导致的工作流无限运行消耗宝贵的Actions分钟数。3. 从零到一的完整实操指南3.1 选择适合你的启动工作流模板文档提供了多达9种启动工作流A-I这里重点介绍最常用的三种。工作流AGitHub模板推荐给大多数用户这是最快捷的方式适合从零开始一个新项目。访问 vbonk/repo-template 仓库页面。点击绿色的“Use this template”按钮然后选择“Create a new repository”。在新页面中输入你的仓库名、描述选择公开或私有然后点击创建。将新仓库克隆到本地git clone https://github.com/你的用户名/你的仓库名.git进入目录并用你喜欢的AI助手如Claude Code打开。运行内置命令/project:init-template。这是一个交互式向导会询问你项目名称、技术栈等信息并自动更新README.md、CLAUDE.md等文件中的占位符。关键步骤解析/project:init-template命令是模板的灵魂之一。它不是一个简单的文件复制而是一个智能的上下文感知配置工具。它会读取你项目的现有文件如果有并基于你的回答生成定制化的配置。例如如果你选择Python它会确保ci.yml中Python部分被激活并在CLAUDE.md中填充Python相关的常用命令如pytest,ruff check。工作流B本地优先适用于已有规划的项目如果你已经在本地有了项目雏形或者想先完全配置好再推送到GitHub这个流程更合适。在本地初始化项目mkdir my-project cd my-project git init。将模板中的关键命令文件下载到本地mkdir -p .claude/commands curl -sL https://raw.githubusercontent.com/vbonk/repo-template/main/.claude/commands/init-template.md -o .claude/commands/init-template.md。用Claude Code打开当前目录运行/project:init-template。向导会引导你完成配置并最终帮你创建远程GitHub仓库并推送初始提交。优势所有定制都在本地完成生成的初始提交就是完全配置好的状态没有需要后续清理的模板占位符。工作流E改造现有仓库升级旧项目对于已经存在的老项目想引入这套标准步骤也很简单。在现有仓库根目录同样下载init-template.md命令文件到.claude/commands/目录。在Claude Code中运行/project:init-template。AI助手会分析你现有的项目结构然后以“增量”的方式添加模板中缺失但重要的文件如SECURITY.md、CI工作流、.github/目录下的模板同时会尽量避免覆盖你已有的自定义配置。它还会生成一份报告建议你可以改进的地方。3.2 安全加固一键执行项目初始化后无论通过哪种工作流安全加固都是下一步的重中之重。模板提供了极简的一键式脚本。# 在项目根目录下执行 bash scripts/secure-repo.sh这个脚本做了什么它通过GitHub CLI (gh) 调用GitHub API自动为你配置以下设置启用分支保护规则Branch Protection Rule到默认分支通常是main。启用Dependabot安全警报和自动更新。配置标签保护规则。启用“合并后自动删除头部分支”选项。执行后你可以立刻在GitHub仓库的“Settings” - “Branches”和“Security”页面看到这些更改已生效。实操心得运行这个脚本需要你先在本地通过gh auth login完成GitHub CLI的认证。如果脚本执行失败通常是因为权限不足仓库不属于你或者你的个人访问令牌缺少repo或admin:repo_hook权限。对于组织内的仓库你可能需要组织管理员权限。3.3 安装预提交钩子Pre-commit Hooks安全脚本配置了远程规则本地的第一道防线需要手动安装出于灵活性的考虑因为有些项目可能已有自己的钩子体系如Husky。# 安装秘密扫描预提交钩子 bash templates/hooks/setup-hooks.sh这个脚本会在你的.git/hooks/pre-commit中安装一个钩子。它会尝试检测项目中是否已存在pre-commit框架或Husky的配置。如果存在它会以兼容的方式添加检查如果不存在则直接安装一个基础的钩子脚本。重要提示安装后请务必进行一次测试提交尝试将一个假密钥如AWS_ACCESS_KEY_IDAKIAIOSFODNN7EXAMPLE添加到某个文件并git add然后执行git commit。你应该看到提交被阻止并收到明确的错误信息。这个测试能让你确信防线是有效的。3.4 配置你的AI助手这是提升开发体验的关键一步。以配置Claude Code为例模板提供的CLAUDE.md文件已经是一个结构化的项目上下文文档。你需要打开它根据你的项目进行微调。重点关注以下几个部分项目概述用一两句话描述这个项目是做什么的。技术栈明确列出主要语言、框架、数据库。命令列出常用的开发命令如npm run dev、python manage.py test、go build ./...。AI助手会参考这些命令来执行操作。目录结构简要说明src/、tests/、docs/等目录的用途。代码风格与约定例如使用单引号还是双引号缩进是2空格还是4空格命名规范等。对于其他AI工具如Cursor你可以编辑.cursorrules文件对于Copilot编辑.github/copilot-instructions.md。这些配置是独立的互不影响。4. 深入核心组件与定制化4.1 CI/CD工作流详解与定制让我们拆解一下.github/workflows/ci.yml的核心部分以Node.js为例name: CI on: [push, pull_request] jobs: test: runs-on: ubuntu-latest permissions: contents: read steps: - uses: actions/checkoutb4ffde65f46336ab88eb53be808477a3936bae11 # v4 - name: Use Node.js uses: actions/setup-node60edb5dd545a775178f52524783378180af0d1f8 # v4 with: node-version-file: .nvmrc cache: npm - name: Install dependencies run: npm ci - name: Lint run: npm run lint --if-present - name: Test run: npm test --if-present - name: Build run: npm run build --if-present关键点解析on: [push, pull_request]: 工作流在代码推送和创建PR时触发确保每次变更都经过检验。permissions: contents: read: 显式设置权限这个作业只需要读取仓库内容无需写入权限符合最小权限原则。uses: ...SHA: 注意这里使用的是Action的完整提交SHA如b4ffde65f...而不是v4标签。这是防止供应链攻击的关键。你需要定期更新这些SHA到对应Action新版本的安全哈希值。--if-present: 这是一个非常实用的参数。它允许工作流在package.json中不存在对应的脚本如lint,build时安静地跳过该步骤而不是报错失败。这使得同一个工作流模板能适应不同成熟度的项目。如何添加一个新的语言或步骤假设你要为一个Python项目添加一个代码格式检查步骤使用black找到CI文件中被注释掉的Python作业部分取消注释。在steps中的pytest步骤之后添加一个新步骤- name: Format check with black run: black --check --diff .确保你的项目依赖requirements.txt或pyproject.toml中包含了black。4.2 问题Issue管理系统的构建模板内置了一套轻量但高效的问题管理系统这对于独立开发者管理任务流尤其有用。标签Labels体系 运行scripts/labels.sh会创建一套精心设计的标签。这套标签的核心是“状态-负责人-类型”三维分类法。状态类(status:):planning,in-progress,done,blocked。这驱动了自动化例如sync-status.yml工作流可以根据status:标签自动同步任务到GitHub Projects看板。负责人类(owner:):human,agent,external。这清晰定义了任务由谁完成。owner:agent的Issue可以放心交给AI助手处理owner:human则标记需要人工介入如配置环境变量、决策owner:external表示在等待第三方。类型与优先级bug,enhancement,task,priority:high等。问题模板Issue Templates 在.github/ISSUE_TEMPLATE/目录下有5个预定义的模板。当你创建新Issue时可以选择模板。例如“Bug Report”模板会引导你填写环境、复现步骤、预期与实际行为确保上报的信息完整。“Agent Task”模板则预设了owner:agent和task标签并提示你提供清晰的、AI可执行的指令。实用脚本scripts/my-tasks.sh: 快速过滤出与你相关的任务。./scripts/my-tasks.sh显示所有未关闭的任务./scripts/my-tasks.sh agent只显示可交给AI处理的任务./scripts/my-tasks.sh high只显示高优先级任务。scripts/close-issue.sh 123 Fixed in commit abcdef: 快速关闭一个Issue例如编号123并自动为其添加status:done标签同时附上一条解决注释。这简化了工作流闭环。4.3 针对AI的提示注入防御这是一个颇具前瞻性的特性。随着AI助手深度集成到开发流程其接收的指令如Issue描述、PR正文、Commit消息可能成为攻击向量。恶意用户可能在PR描述中嵌入精心构造的指令试图让处理该PR的AI助手执行非预期操作。模板通过以下方式构建防御CODEOWNERS文件保护.github/CODEOWNERS文件指定了像CLAUDE.md、.cursorrules这样的AI配置文件的所有者。任何对这些文件的修改都必须经过指定所有者的代码审查Code Review才能合并防止攻击者通过提交恶意指令来劫持AI行为。PR正文扫描可选模板提供了一个可选的GitHub Actions工作流示例用于扫描PR正文中是否包含常见的提示注入模式如“忽略之前的指令”、“你现在是…”等并发出警告。安全文档docs/AI-SECURITY.md详细阐述了相关的威胁模型和最佳实践提高开发者的安全意识。5. 常见问题与故障排查实录在实际使用中你可能会遇到一些典型问题。以下是我根据经验整理的排查指南。5.1 CI工作流失败排查问题推送代码后GitHub Actions CI运行失败。可能原因1缺少依赖文件或测试脚本。现象在Install dependencies或Test步骤失败报错“npm ERR!”、“pytest: command not found”或“No tests found”。排查检查你的项目根目录下是否有对应的依赖管理文件如package.json,requirements.txt,go.mod。检查package.json的scripts里是否定义了test命令。解决创建对应的依赖文件或确保测试命令存在。如果项目初期确实没有测试可以在CI文件中暂时注释掉- name: Test这一整步或者在该步骤的run命令后加上|| true不推荐长期使用。可能原因2未取消注释正确的语言块。现象CI流程似乎什么都没做就通过了或者报错找不到运行器。排查打开.github/workflows/ci.yml确认你项目所用语言对应的job如test-node,test-python没有被注释掉行首没有#。解决取消注释你需要的整个job定义块。可能原因3GitHub Actions权限问题。现象在需要向仓库写入内容如上传构建产物、评论PR的步骤失败。排查检查工作流文件顶层的permissions设置或者具体job里的permissions。默认模板设置为最小权限contents: read。解决根据实际需要在特定job中增加权限例如需要评论PR可以添加pull-requests: write。务必遵循最小权限原则。5.2 预提交钩子Pre-commit Hook不生效问题执行git commit时没有触发秘密扫描。可能原因1钩子未成功安装或没有执行权限。排查检查.git/hooks/pre-commit文件是否存在且可执行。在Unix-like系统上运行ls -la .git/hooks/pre-commit文件应显示为可执行如-rwxr-xr-x。解决如果文件不存在重新运行bash templates/hooks/setup-hooks.sh。如果不可执行运行chmod x .git/hooks/pre-commit。可能原因2使用了--no-verify参数。排查检查你的git commit命令是否包含了--no-verify或-n参数这会跳过所有钩子。解决避免使用该参数提交。如果是为了紧急修复提交后应立即检查是否有敏感信息被误提交并使用git commit --amend或git filter-branch/git filter-repo进行清理注意重写历史在协作仓库中需谨慎。可能原因3项目已存在其他钩子管理工具如Husky。现象Husky可能接管了钩子目录模板的安装脚本可能将检查逻辑添加到了Husky的配置中需要确认。排查检查项目根目录是否有.husky/目录以及package.json中是否有Husky配置。解决模板的安装脚本通常会检测到Husky并尝试适配。如果钩子仍未运行检查Husky的pre-commit钩子文件通常在.husky/pre-commit是否包含了调用秘密扫描脚本的命令。5.3/project:init-template命令未找到问题在Claude Code中键入/project:init-template但AI助手没有识别该命令。可能原因1命令文件未放置在正确位置。排查确认项目根目录下存在.claude/commands/init-template.md文件。对于通过GitHub模板创建的项目该文件应已存在。对于手动设置或改造的项目你可能需要手动创建目录并下载文件。解决确保文件路径和名称完全正确。Claude Code会扫描.claude/commands/目录下所有.md文件来发现命令。可能原因2Claude Code会话未正确加载项目上下文。现象Claude Code似乎没有“感知”到当前目录是一个配置了命令的项目。解决尝试关闭并重新打开Claude Code到该项目目录。有时需要重启AI助手的会话以重新加载文件系统变更。5.4 安全加固脚本secure-repo.sh执行失败问题运行脚本时提示权限错误或GitHub API错误。可能原因1GitHub CLI (gh) 未安装或未登录。排查在终端运行gh auth status查看是否已登录且有足够的权限read:orgrepoadmin:repo_hook等。解决如果未安装请先安装GitHub CLI。如果未登录运行gh auth login并按照指引完成认证。确保认证的账户对目标仓库有管理员Admin权限。可能原因2目标仓库是组织仓库且存在限制。现象脚本在设置分支保护规则时失败提示“Resource not accessible by integration”或权限不足。排查组织可能设置了规则禁止通过API修改分支保护或者你的个人访问令牌没有组织层级的足够权限。解决你需要组织所有者的权限或者让组织管理员在仓库设置中手动启用所需的安全功能。也可以尝试在组织设置中暂时放宽相关API限制不推荐长期放宽。5.5 如何更新到模板的新版本问题模板项目本身在不断更新改进如何将更新同步到我已经基于此模板创建的项目中核心原则GitHub的“Use this template”功能是一次性的不会自动同步更新。推荐策略手动选择性合并定期查看原模板仓库的提交历史或Release。将你认为重要的更新如新的安全检查项、优化的CI步骤、新增的AI助手配置手动复制到你的项目中。这需要仔细处理可能的冲突。作为新项目的起点对于全新的、与旧项目无关的功能模块直接再次使用最新版本的模板创建新仓库这是最干净的方式。使用Git高级操作谨慎可以将原模板仓库添加为一个远程源git remote add template https://github.com/vbonk/repo-template.git然后尝试将模板的特定分支合并到你的主分支。但这通常会带来大量冲突因为你的项目已经有了大量自定义代码。仅推荐给熟悉Git冲突解决的高级用户并且务必在操作前备份你的仓库。我个人在实际使用中的体会是这个模板最大的价值在于它强制你在一开始就建立起良好的习惯和防线。它像一位沉默的搭档在你专注于创造时默默地为你守护着代码仓库的秩序与安全。尤其是对于深度使用AI助手的开发者那些预置的配置文件CLAUDE.md,.cursorrules所带来的上下文感知能力提升是立竿见影的。它节省的远不止是配置时间更是无数次向AI重复解释项目背景的沟通成本。从第一次提交就拥有完备的CI和安全扫描这种安心感是任何事后补救都无法比拟的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2577378.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

SpringBoot-17-MyBatis动态SQL标签之常用标签

文章目录 1 代码1.1 实体User.java1.2 接口UserMapper.java1.3 映射UserMapper.xml1.3.1 标签if1.3.2 标签if和where1.3.3 标签choose和when和otherwise1.4 UserController.java2 常用动态SQL标签2.1 标签set2.1.1 UserMapper.java2.1.2 UserMapper.xml2.1.3 UserController.ja…

wordpress后台更新后 前端没变化的解决方法

使用siteground主机的wordpress网站,会出现更新了网站内容和修改了php模板文件、js文件、css文件、图片文件后,网站没有变化的情况。 不熟悉siteground主机的新手,遇到这个问题,就很抓狂,明明是哪都没操作错误&#x…

网络编程(Modbus进阶)

思维导图 Modbus RTU(先学一点理论) 概念 Modbus RTU 是工业自动化领域 最广泛应用的串行通信协议,由 Modicon 公司(现施耐德电气)于 1979 年推出。它以 高效率、强健性、易实现的特点成为工业控制系统的通信标准。 包…

UE5 学习系列(二)用户操作界面及介绍

这篇博客是 UE5 学习系列博客的第二篇,在第一篇的基础上展开这篇内容。博客参考的 B 站视频资料和第一篇的链接如下: 【Note】:如果你已经完成安装等操作,可以只执行第一篇博客中 2. 新建一个空白游戏项目 章节操作,重…

IDEA运行Tomcat出现乱码问题解决汇总

最近正值期末周,有很多同学在写期末Java web作业时,运行tomcat出现乱码问题,经过多次解决与研究,我做了如下整理: 原因: IDEA本身编码与tomcat的编码与Windows编码不同导致,Windows 系统控制台…

利用最小二乘法找圆心和半径

#include <iostream> #include <vector> #include <cmath> #include <Eigen/Dense> // 需安装Eigen库用于矩阵运算 // 定义点结构 struct Point { double x, y; Point(double x_, double y_) : x(x_), y(y_) {} }; // 最小二乘法求圆心和半径 …

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式

一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明&#xff1a;假设每台服务器已…

XML Group端口详解

在XML数据映射过程中&#xff0c;经常需要对数据进行分组聚合操作。例如&#xff0c;当处理包含多个物料明细的XML文件时&#xff0c;可能需要将相同物料号的明细归为一组&#xff0c;或对相同物料号的数量进行求和计算。传统实现方式通常需要编写脚本代码&#xff0c;增加了开…

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器的上位机配置操作说明

LBE-LEX系列工业语音播放器|预警播报器|喇叭蜂鸣器专为工业环境精心打造&#xff0c;完美适配AGV和无人叉车。同时&#xff0c;集成以太网与语音合成技术&#xff0c;为各类高级系统&#xff08;如MES、调度系统、库位管理、立库等&#xff09;提供高效便捷的语音交互体验。 L…

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…

【大模型RAG】拍照搜题技术架构速览:三层管道、两级检索、兜底大模型

摘要 拍照搜题系统采用“三层管道&#xff08;多模态 OCR → 语义检索 → 答案渲染&#xff09;、两级检索&#xff08;倒排 BM25 向量 HNSW&#xff09;并以大语言模型兜底”的整体框架&#xff1a; 多模态 OCR 层 将题目图片经过超分、去噪、倾斜校正后&#xff0c;分别用…

【Axure高保真原型】引导弹窗

今天和大家中分享引导弹窗的原型模板&#xff0c;载入页面后&#xff0c;会显示引导弹窗&#xff0c;适用于引导用户使用页面&#xff0c;点击完成后&#xff0c;会显示下一个引导弹窗&#xff0c;直至最后一个引导弹窗完成后进入首页。具体效果可以点击下方视频观看或打开下方…

接口测试中缓存处理策略

在接口测试中&#xff0c;缓存处理策略是一个关键环节&#xff0c;直接影响测试结果的准确性和可靠性。合理的缓存处理策略能够确保测试环境的一致性&#xff0c;避免因缓存数据导致的测试偏差。以下是接口测试中常见的缓存处理策略及其详细说明&#xff1a; 一、缓存处理的核…

龙虎榜——20250610

上证指数放量收阴线&#xff0c;个股多数下跌&#xff0c;盘中受消息影响大幅波动。 深证指数放量收阴线形成顶分型&#xff0c;指数短线有调整的需求&#xff0c;大概需要一两天。 2025年6月10日龙虎榜行业方向分析 1. 金融科技 代表标的&#xff1a;御银股份、雄帝科技 驱动…

观成科技:隐蔽隧道工具Ligolo-ng加密流量分析

1.工具介绍 Ligolo-ng是一款由go编写的高效隧道工具&#xff0c;该工具基于TUN接口实现其功能&#xff0c;利用反向TCP/TLS连接建立一条隐蔽的通信信道&#xff0c;支持使用Let’s Encrypt自动生成证书。Ligolo-ng的通信隐蔽性体现在其支持多种连接方式&#xff0c;适应复杂网…

铭豹扩展坞 USB转网口 突然无法识别解决方法

当 USB 转网口扩展坞在一台笔记本上无法识别,但在其他电脑上正常工作时,问题通常出在笔记本自身或其与扩展坞的兼容性上。以下是系统化的定位思路和排查步骤,帮助你快速找到故障原因: 背景: 一个M-pard(铭豹)扩展坞的网卡突然无法识别了,扩展出来的三个USB接口正常。…

未来机器人的大脑:如何用神经网络模拟器实现更智能的决策?

编辑&#xff1a;陈萍萍的公主一点人工一点智能 未来机器人的大脑&#xff1a;如何用神经网络模拟器实现更智能的决策&#xff1f;RWM通过双自回归机制有效解决了复合误差、部分可观测性和随机动力学等关键挑战&#xff0c;在不依赖领域特定归纳偏见的条件下实现了卓越的预测准…

Linux应用开发之网络套接字编程(实例篇)

服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …

华为云AI开发平台ModelArts

华为云ModelArts&#xff1a;重塑AI开发流程的“智能引擎”与“创新加速器”&#xff01; 在人工智能浪潮席卷全球的2025年&#xff0c;企业拥抱AI的意愿空前高涨&#xff0c;但技术门槛高、流程复杂、资源投入巨大的现实&#xff0c;却让许多创新构想止步于实验室。数据科学家…

深度学习在微纳光子学中的应用

深度学习在微纳光子学中的主要应用方向 深度学习与微纳光子学的结合主要集中在以下几个方向&#xff1a; 逆向设计 通过神经网络快速预测微纳结构的光学响应&#xff0c;替代传统耗时的数值模拟方法。例如设计超表面、光子晶体等结构。 特征提取与优化 从复杂的光学数据中自…