Browserwing
browserwing/browserwing
Browser automation platform with 78 built-in scripts and full CLI.
Exports the article list and original article text from a Tencent ima knowledge base through a logged-in Chrome session, using browser automation.
SKILL.md written in Chinese; this summary is our English description.
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wiki --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .claude/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .claude/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .claude/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wikiType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wiki --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .agents/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .agents/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .agents/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wiki --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .cursor/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .cursor/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/zj-unicom-ai/UniEmployee.git --path backend/skills/tencent-ima-wiki--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wiki --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .gemini/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .gemini/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wikiInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .github/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .github/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .github/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install zj-unicom-ai/UniEmployee tencent-ima-wiki --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/zj-unicom-ai/UniEmployee.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/backend/skills/tencent-ima-wiki .opencode/skills/tencent-ima-wiki && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "tencent-ima-wiki" agent skill from https://github.com/zj-unicom-ai/UniEmployee/tree/main/backend/skills/tencent-ima-wiki into .opencode/skills/tencent-ima-wiki/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "tencent-ima-wiki", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
tencent-ima-wikiExports the article list and original article text from a Tencent ima knowledge base through a logged-in Chrome session, using browser automation.
The ima knowledge base page cannot show article details directly and uses a virtual-scrolling list whose DOM elements carry no links. The skill connects to an already logged-in ima.qq.com/wikis page, walks React Fiber state to pull each article's title and sourcePath, which is usually a WeChat official account link, then opens each link in a new tab and reads the page text.
The extraction logic is in scripts/extract_source_paths.js and runs through a browser-control tool; Chrome must be open on the wikis page with the target knowledge base selected. Scrolling loads more rows, and a troubleshooting section covers missing data-index elements, null sourcePath values for manual notes or PDFs, and expired logins, where you take over to sign in. It advises against calling ima's backend API directly because of its signing complexity, and suggests spacing out tab opening. The SKILL.md is written in Chinese.
Read from SKILL.md and the folder at commit c38a00a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (JavaScript), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
Hosts in commands or code, which the agent is likely to contact:
ima.qq.comFrom URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Tencent ima Knowledge Base Reader loads about 1k tokens when it runs. Until then it costs about 57 tokens; SKILL.md has 96 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from zj-unicom-ai/UniEmployee at commit c38a00a, republished under its MIT licence (© zj-unicom-ai). 96 words, ~1,024 tokens.
.claude/skills/tencent-ima-wiki/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.通过浏览器自动化连接已登录的 ima.qq.com/wikis 页面,从 React 组件内部状态中提取文章的 sourcePath(原始微信公众号等外部链接),再逐个打开新标签页获取文章正文。
mac_computer_use_tool 配合 plane="bu" 进行浏览器操作import seed_browser_use as bu
# 同步连接浏览器
bu.resync()
# 确认页面已加载
bu.wait_for_load(timeout=15)
page_info = bu.page_info()
print("当前页面:", page_info.get("url"))如果 resync 失败或没有活动页面,直接用 bu.navigate("https://ima.qq.com/wikis") 打开页面。
ima 知识库使用虚拟滚动列表,文章数据存储在 React Fiber 内部状态中,DOM 元素上没有直接的链接属性。需要通过遍历 React Fiber 提取。
使用 scripts/extract_source_paths.js 中的代码逻辑,提取前 N 条文章的标题和原始链接:
js_code = """
(async () => {
const results = [];
const count = arguments[0] || 10; // 要提取的条数
for (let i = 0; i < count; i++) {
const item = document.querySelector(`[data-index="${i}"]`);
if (!item) continue;
const fiberKey = Object.keys(item).find(k => k.startsWith('__reactFiber'));
let fiber = item[fiberKey];
let foundPath = null;
let foundTitle = null;
let depth = 0;
function searchObj(obj, path, depth2) {
if (!obj || depth2 > 8 || foundPath) return;
if (typeof obj !== 'object') return;
for (let key in obj) {
try {
if ((key === 'sourcePath' || key === 'source_path') && typeof obj[key] === 'string') {
foundPath = obj[key];
}
if ((key === 'title' || key === 'name') && typeof obj[key] === 'string' && obj[key].length > 5) {
foundTitle = obj[key];
}
if (typeof obj[key] === 'object' && obj[key] !== null) {
searchObj(obj[key], path + '.' + key, depth2 + 1);
}
} catch(e) {}
}
}
while (fiber && depth < 30 && !foundPath) {
if (fiber.memoizedProps) {
searchObj(fiber.memoizedProps, 'props', 0);
}
fiber = fiber.return;
depth++;
}
results.push({
index: i,
title: foundTitle || item.innerText.split('\\n')[0],
sourcePath: foundPath
});
}
return results;
})()
"""
# 传入要提取的条数
result = bu.js(js_code.replace('arguments[0] || 10', '5'))关键点:
data-index 属性定位,从 0 开始sourcePath 通常是微信公众号链接(mp.weixin.qq.com/s/...)提取到 sourcePath 后,逐个打开新标签页获取正文:
import time
for article in result:
if not article.get('sourcePath'):
continue
# 关闭上一个标签页(可选,节省资源)
# bu.close_tab()
# time.sleep(1)
# 打开新标签页
bu.new_tab(article['sourcePath'])
time.sleep(3)
bu.wait_for_load(timeout=10)
# 获取文章正文
content = bu.get_page_text()
print(f"标题: {article['title']}")
print(f"内容: {content[:500]}...")
# 处理完后关闭
bu.close_tab()
time.sleep(1)虚拟滚动列表只渲染可视区域的项。要获取更多文章,需要先向下滚动:
# 滚动列表区域
bu.scroll(500, 500, "down", amount=5)
time.sleep(1)
# 然后重新提取 data-index 更大的项bu.snapshot() 看看页面结构depth < 30 改大)url、link、originalUrlinteraction.request_action 让用户接管完成登录/cgi-bin/knowledge_tab_reader/get_knowledge_list),需要复杂的签名和参数,容易失败bu.get_page_text() 获取© zj-unicom-ai, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 1 other file (scripts) in backend/skills/tencent-ima-wiki of zj-unicom-ai/UniEmployee.
Open the folder on GitHubat commit c38a00a
Tencent ima Knowledge Base Reader next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Tencent ima Knowledge Base Reader this skillzj-unicom-ai/UniEmployee | 360 | — | ~1k | Automated safety check: Pass | MIT | |
| Browserwingbrowserwing/browserwing | 1.4k | — | ~1.8k | Automated safety check: Pass | MIT | |
| Open BrowserJasonHonKL/Openbrowser | 114 | — | ~1.6k | Automated safety check: Pass | MIT | |
| Content CollectorLeoYeAI/openclaw-master-skills | 2.2k | — | ~4.8k | Automated safety check: Pass | MIT | |
| WeChat Article DownloaderMoore-developers/moore-wechat-article-downloader | 294 | — | ~3.4k | Automated safety check: Pass | MIT | |
| Knowledge Base Managementchubbyguan/chubbyskills | 1.2k | — | ~3.3k | Automated safety check: Pass | MIT |
browserwing/browserwing
Browser automation platform with 78 built-in scripts and full CLI.
JasonHonKL/Openbrowser
A skill your agent uses whenever the task involves browsing web pages, extracting page content, clicking forms, or completing web workflows.
LeoYeAI/openclaw-master-skills
Automatically collect and archive content from shared links in group chats.
Moore-developers/moore-wechat-article-downloader
Downloads and manages WeChat official account articles from URLs, an account's history or subscriptions, adding engagement metrics and top comments when a valid session exists.
chubbyguan/chubbyskills
管理本地 Markdown/Obsidian 知识库:素材入库、健康检查、增量索引、关键词与 semantic-lite 检索、逐字原文资料包、归档和 MCP 连接。用于搜索知识库、整理资料及为 Agent 准备可定位的引用。
firecrawl/skills
Build a knowledge base from web content with Firecrawl. An agent skill from firecrawl/skills.
zj-unicom-ai/UniEmployee
Prepares account managers for visits to government and enterprise customers: looks up the customer file, matches products, builds a Word solution document and files visit minutes.
zj-unicom-ai/UniEmployee
Produces a full business health analysis from sales, finance, inventory and customer CSV files: core KPIs, monthly trends, drill-downs and recommendations.
zj-unicom-ai/UniEmployee
Produces a competitor benchmarking dashboard as an HTML page with an ECharts price comparison, from built-in profile cards plus fresh web research.
zj-unicom-ai/UniEmployee
Analyzes insurance operating data such as premium, loss ratio, renewal rate and expense ratio by branch, product and channel, flags anomalies and builds an HTML dashboard.
zj-unicom-ai/UniEmployee
Assesses a reported market event such as a competitor price cut, new launch or negative press, verifies it, grades urgency from P0 to P2 and produces a short alert card.
zj-unicom-ai/UniEmployee
市场情报每日简报技能。当用户需要市场简报/早报/日报/周报/行业动态汇总,或问"最近有什么值得关注的"时使用。产出 HTML 在线看板。
Exports the article list and original article text from a Tencent ima knowledge base through a logged-in Chrome session, using browser automation. The ima knowledge base page cannot show article details directly and uses a virtual-scrolling list whose DOM elements carry no links.com/wikis page, walks React Fiber state to pull each article's title and sourcePath, which is usually a WeChat official account link, then opens each link in a new tab and reads the page text.
Tencent ima Knowledge Base Reader fits situations like: listing the articles in a Tencent ima knowledge base; reading the original text of articles saved in ima; collecting titles, sources and bodies from a personal or shared knowledge base; troubleshooting empty sourcePath values in the ima list.
Run `npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a claude-code`. Or copy the skill folder (backend/skills/tencent-ima-wiki in zj-unicom-ai/UniEmployee) into .claude/skills/tencent-ima-wiki in your project. Claude Code loads it when a task matches its description.
Run `npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a codex`. Or copy the skill folder (backend/skills/tencent-ima-wiki in zj-unicom-ai/UniEmployee) into .agents/skills/tencent-ima-wiki in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add zj-unicom-ai/UniEmployee --skill tencent-ima-wiki -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/tencent-ima-wiki, .gemini/skills/tencent-ima-wiki, .github/skills/tencent-ima-wiki and .opencode/skills/tencent-ima-wiki in your project.
Going by SKILL.md and its folder, Tencent ima Knowledge Base Reader needs JavaScript for the scripts in its folder. Our summary lists: Chrome with a logged-in ima.qq.com/wikis page and the knowledge base selected; A browser-control tool such as mac_computer_use_tool with the bu plane.
SKILL.md names 1 domain. In commands or code: ima.qq.com; the agent is likely to contact it when it follows the instructions. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Tencent ima Knowledge Base Reader is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1k tokens (SKILL.md is roughly 4.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Tencent ima Knowledge Base Reader: Browserwing (browserwing/browserwing, 1.4k stars), Open Browser (JasonHonKL/Openbrowser, 114 stars), Content Collector (LeoYeAI/openclaw-master-skills, 2.2k stars) and WeChat Article Downloader (Moore-developers/moore-wechat-article-downloader, 294 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
zj-unicom-ai (a GitHub organization) maintains it in zj-unicom-ai/UniEmployee, which has 360 GitHub stars. The repository holds 22 skills in this directory. The repository was last updated on October 8, 2026.
Source: zj-unicom-ai/UniEmployee on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.