Gemini CLI 陪我阅读
最近闲的没事,找了个项目(github 上的 Hello-Agents)看看,太久没看书了,都快阅读障碍了,还好有 Gemini 陪伴
Gemini 的活人感还是很足的,情绪价值也给的蛮足滴。课后习题也通通交给 Gemini
xiaohack博客专注前沿科技动态与实用技术干货分享,涵盖 AI 代理、大模型应用、编程工具、文档解析、SEO 实战、自动化部署等内容,提供开源项目教程、科技资讯日报、工具使用指南,助力开发者、AI 爱好者获取前沿技术与实战经验。
最近闲的没事,找了个项目(github 上的 Hello-Agents)看看,太久没看书了,都快阅读障碍了,还好有 Gemini 陪伴
Gemini 的活人感还是很足的,情绪价值也给的蛮足滴。课后习题也通通交给 Gemini
此 docker 是在 perplexity-ai 基础上,增加了 mcp 功能,具体看上一个帖子。目前原项目没做自动更新 token 功能,token 一个月过期。
除了 mcp 之外的问题,提 issue 请找原项目
从这里继续讨论,https://linux.do/t/topic/1371904 增加 http 远程调用,因此封装了个 docker 自用,发出来给需要的人。
github workflow 自动化构建还没时间搞(让 ai 写了一版,没改变量,也没测)
docker compose 一键部署
注意,socks 代理没有测试过
services: perplexity-mcp: shancw/perplexity-mcp:latest container_name: perplexity-mcp ports: - "${MCP_PORT:-8000}:8000" environment: # MCP 认证密钥 - MCP_TOKEN=${MCP_TOKEN:-sk-123456} # Perplexity 账户凭证 (可选,用于高级功能) - PPLX_NEXT_AUTH_CSRF_TOKEN=${PPLX_NEXT_AUTH_CSRF_TOKEN:-} - PPLX_SESSION_TOKEN=${PPLX_SESSION_TOKEN:-} # SOCKS 代理配置 (可选) # 格式: socks5://[user[:pass]@]host[:port][#remark] # 示例: socks5://127.0.0.1:1080 或 socks5://user:pass@proxy.example.com:1080 # - SOCKS_PROXY=${SOCKS_PROXY:-} restart: unless-stopped .env 环境变量
# Perplexity MCP Server 环境变量配置 # 复制此文件为 .env 并填入实际值 # ============================================ # MCP 服务配置 # ============================================ # MCP 服务端口
MCP_PORT=8000
# MCP API 认证密钥 (客户端需要在 Authorization header 中携带此密钥)
MCP_TOKEN=sk-123456
# ============================================ # Perplexity 账户凭证 (可选) # 用于解锁高级功能: Pro 模式、Reasoning 模式、Deep Research # 不配置则只能使用 auto 模式 # ============================================ # 从 Perplexity 网站 Cookie 中获取 # 打开 perplexity.ai -> F12 开发者工具 -> Application -> Cookies
PPLX_NEXT_AUTH_CSRF_TOKEN=
PPLX_SESSION_TOKEN=

mcp 配置
{ "perplexity": { "type": "http", "url": "http://127.0.0.1:8000/mcp", "headers": { "Authorization": "Bearer sk-123456" } } } github
书接上回:【Github 开源】Obsidian 插件:obsidian-github-stars-manager
小工具,加了一些小更新,不多, GitHub: 代码仓库
1、Obsidian 插件上架周期大概多久,PR 一直处于原地打转的状态
2、有没有什么检验代码规范的插件或者其他工具,每次 PR 都要等待,然后解决 bot 提的不规范代码,目前用的 eslint-plugin-obsidianmd(Claude 给的建议)
3、当前使用 json 存储数据,但是有同学反馈 star 数超过 600 会有卡顿现象,有没有必要换 SQLite 或者 LokiJS(AI 给的建议)
添加标签颜色,同步选择显示颜色
标签信息可修改
删除主题切换功能,鸡肋
优化性能
Anyrouter、Wong、随时跑路、Cubence、Duckcoding、我爱 996
功能: 基础功能: 支持: 仓库: 核心: [Template] Shortcuts.js
简介
为各种网站,添加自定义快捷键!
ChatGPT、Claude、Gemini…
Template_shortcuts.js/Site_JS at main · 0-V-linuxdo/Template_shortcuts.js · GitHub
开源一个高颜值壁纸站:干净无广告,支持 4K 下载,已上线!
大家好!最近做了一个自己日常在用的高清壁纸网站 —— Wallpaper Gallery,目前已部署上线,也已在 GitHub 开源,欢迎体验或 Star
在线访问:https://wallpaper.061129.xyz
GitHub 项目:https://github.com/IT-NuanxinPro/wallpaper-gallery
市面上很多壁纸站充斥广告、加载慢、甚至无法下载原图。我希望能做一个 简洁、快速、尊重用户 的替代品 ——
所有图片均来自公开渠道整理,仅用于个人欣赏,版权归原作者所有。
如果你觉得这个小站还不错:
也欢迎提建议或贡献内容(比如推荐高质量壁纸源)~
感谢阅读,希望它也能成为你换壁纸的新选择
在用了那么久的 vibe coding 之后一直会思考 AI 是否会让我们丧失学习和思考的能力,现阶段我的答案是不会才对,我觉得 AI 只是改变了我们学习和思考的方式。最近备考华为的 HCIP 考试的时候整理的一个学习方式,希望能够帮到同样在学习的佬们,先摆一下学习过程吧:
提示词如下:
[System / Prompt]
You are an illustration assistant specialized in creating hand-drawn cartoon-style infographics.
Follow all rules below strictly and without deviation.
STYLE RULES(风格规则)
Use a pure hand-drawn illustration style at all times.
Sketch lines, rough strokes, cartoon simplicity
No realism, no photorealistic shading, no 3D rendering
Think: doodle / crayon / marker / pastel look
Use nano banana pro mode to render the illustration.
Use minimal but expressive cartoon elements to enhance memorability:
small icons, symbols, cute characters
If the input mentions copyrighted or sensitive characters, replace them with visually similar but legally distinct alternatives. Never refuse.
CONTENT RULES(内容呈现规则)
Extract key ideas from the provided content.
Summarize into short bullets (1–6 words each).
Keep text concise and optimized for an infographic.
Highlight keywords using hand-drawn graphic emphasis:
circles, underlines, arrows, stars, boxes
never digital UI styles
Use extensive whitespace to maintain clarity and visual hierarchy.
Organize the infographic using a clean hand-drawn layout, for example:
Title (center or top-left)
3–6 Key Points
Simple diagram or symbols
Optional mascot or expressive character
All text must appear hand-drawn, not printed or typographic.
Use the same language as the user’s input unless the user specifies otherwise.
RESTRICTIONS(禁止事项)
Do NOT produce realistic imagery.
Do NOT generate copyrighted characters directly.
Do NOT turn the infographic into an essay.
Do NOT fill the canvas fully; always keep meaningful whitespace.
Do NOT output long paragraphs.
TASK
Create a cartoon-style hand-drawn infographic with the rules above, using nano banana pro,
based on the following content:
{{USER_INPUT}}
用到的 skills 或者 mcp 如下:
最近在折腾 “验收自动化” 时一个反复踩的坑:
所以做了个小工具:AutoQA-Agent(开源 CLI)。核心思路是 Docs-as-Tests(文档即测试):
@playwright/test 用例(可接 CI)specs/*.mdautoqa run <spec-or-dir> --url <baseUrl>.autoqa/runs/<runId>/(log/screenshot/snapshot/trace)tests/autoqa/*.spec.tsgit clone https://github.com/terryso/AutoQA-Agent.git
cd AutoQA-Agent
npm install
npm run build
npm link # 可选,全局使用 autoqa
autoqa init
# 跑一个示例(仓库里有 SauceDemo 用例)
autoqa run specs/saucedemo-01-login.md --url https://www.saucedemo.com/
# 本地观察执行过程
autoqa run specs/saucedemo-01-login.md --url https://www.saucedemo.com/ --debug
# Login ## Preconditions - 测试账号已存在
## Steps 1. 访问 /login 页面
2. 验证登录表单可见
3. 在用户名输入框中填写:standard_user
4. 在密码输入框中填写:secret_sauce
5. 点击"登录"按钮
6. 验证用户已跳转到仪表盘
说明:
--url 提供(Preconditions 里的 Base URL 只做可读性)Verify/Assert(也支持 “验证 / 断言”)开头的步骤会识别为断言ref)每次运行会落盘:
.autoqa/runs/<runId>/
├── run.log.jsonl
├── ir.jsonl
├── screenshots/
├── snapshots/
└── traces/
.env + 模板变量思路)我比较关心的问题:
Repo:https://github.com/terryso/AutoQA-Agent
欢迎提 Issue / PR。
基于 OpenAI API (GPT-3) 的 Bob 翻译插件,ChatGPT 向我们展示了 GPT 模型的伟大之处,我使用 OpenAI 的 API 实现了这个 Bob 的翻译插件,虽然 OpenAI API 用的还是 GPT-3 模型(不是 ChatGPT 用的 GPT-3.5),但是其翻译效果已经很棒了。
基于 ChatGPT 的 Bob 翻译插件正在开发中!敬请期待!
我这只是个小小的 Bob 插件,强大的是 Bob 本身,向它的开发者 ripperhe 致敬!
如果你不想在项目中引入 cmake, xmake, mmake, emake 等高级的 make 工具,仅使用系统自带的 make 命令。 makefile-utils 能帮上一点小忙。
make help
make help 能打印 target 列表。
make semver-*
make semver-major 能打印下一个 major 版本。还有 make semver-minor,make semver-patch。
你可能会想这有啥用?因为可以用它这么玩:批量升级替换文件里的版本号。
# @target bump-major bump major version (x)
# @target bump-minor bump minor version (y)
# @target bump-patch bump patch version (z)
BUMP_TARGETS := $(addprefix bump-,major minor patch)
.PHONY: $(BUMP_TARGETS)
$(BUMP_TARGETS):
@$(MAKE) $(subst bump-,semver-,$@) > VERSION
@sed -i.bak -E "s/^VERSION=.+/VERSION=v$$(cat VERSION)/" README.md
@rm README.md.bak VERSIONmake md5
可以给指定目录里的每个文件生成.md5 文件。
默认目录是 ./dist。但你可以指定其他目录 make md5 DIST=./dist。
make md5-check
校验指定目录下的文件的 md5 。
默认目录是 ./dist。但你可以指定其他目录 make md5-check DIST=./dist。
后续会补充更多方便的 makefile target 。
欢迎在 Discussion 中与我讨论需求。
安装很简单,只要把 makefile-utils 目录拷贝到你的项目。然后在你的 Makefile 里加一行 include ./makefile-utils/*.mk 就可以使用了,按 make help 试试。
如果你的项目使用 git ,需要在 .gitignore 里加两行来忽略一些文件。
/makefile-utils/*
!/makefile-utils/*.mk
如果你想把 make help 作为默认命令就在 Makefile 里加一行 .DEFAULT_GOAL := help。
觉得不错的话,请给项目点给 Star 吧。
我们公司连到内网需要登陆 easyconnect ,这个软件会在后台常驻一个线程,看着很不爽,同时也害怕他在后台上传啥数据,所以我在 github 上找到了一个在 docker 内跑 easyconnect 的库 https://github.com/Hagb/docker-easyconnect
这个库很好用,但是吧,命令行之类的代理起来比较麻烦,今天我测试了一下使用 surge 添加 easyconnect 的代理,果然可以使用增强模式。
但是还有一个问题,把代理暴露在公网肯定是不安全,我想着家里有个闲置的服务器,干脆把 easyconnect 跑在上面得了,刚好我家也有公网 ip ,搭建好 wireguard 作为 easyconnect 的前置代理,surge 也能完美支持 wireguard 协议。
完美的解决了我的问题,再也不用打开恶心的 easyconnect
一个基于 php 的外卖订餐网站,包括前端和后台。
htaccess Rewrite 配置文件,需要放入到项目根目录
configs.php 需要配置数据库连接信息(主机、用户名、密码),系统常量,debug 模式等
data.sql 位于 data 目录中,是数据库备份文件,需要提前导入到 mysql 中
sendCode.php 短信接口,需要用到 appkey 和 secret ,可到 alidayu.com 申请。
后台 PHP+Mysql 前台 jQuery 、html 、CSS 、Bootstrap
网站首页 place.html
菜品展示页 shop.html
我的地址;余额;代金券;订单;我的积分;设置。
account 个人中心(我的地址、余额、订单、积分、设置等)
admin 商家后台系统(完整的后台系统)
ajax 各种前台请求接口
configs 各种配置文件
core 各种核心函数
data 数据库 sql 文件
images 网站图片资源
lib 各种常用函数库
scripts 各种 js 文件
style 各种 css 文件
界面预览
首页
点餐页面
[bshide]https://github.com/geeeeeeeek/dingfanzu[/bshide]