CDP bridge扩展完善+SOP精简+insight修复+plan_sop+autonomous_sop更新

This commit is contained in:
Liang Jiaqing
2026-03-04 12:02:50 +08:00
parent ffe1f3c4c0
commit 3f8407a853
11 changed files with 103 additions and 60 deletions

View File

@@ -2,17 +2,33 @@
chrome.runtime.onInstalled.addListener(() => console.log('CDP Bridge installed'));
chrome.runtime.onMessage.addListener((msg, sender, sendResponse) => {
if (msg.action === 'getCookies') {
handleGetCookies(msg, sender).then(sendResponse);
if (msg.action === 'cookies') {
handleCookies(msg, sender).then(sendResponse);
return true;
}
if (msg.action === 'cdp') {
handleCDP(msg, sender).then(sendResponse);
return true;
}
if (msg.action === 'tabs') {
(async () => {
try {
if (msg.method === 'switch') {
const tab = await chrome.tabs.update(msg.tabId, { active: true });
await chrome.windows.update(tab.windowId, { focused: true });
sendResponse({ ok: true });
} else {
const tabs = await chrome.tabs.query({});
const data = tabs.map(t => ({ id: t.id, url: t.url, title: t.title, active: t.active, windowId: t.windowId }));
sendResponse({ ok: true, data });
}
} catch (e) { sendResponse({ ok: false, error: e.message }); }
})();
return true;
}
});
async function handleGetCookies(msg, sender) {
async function handleCookies(msg, sender) {
try {
const url = msg.url || sender.tab?.url;
const origin = url.match(/^https?:\/\/[^\/]+/)[0];

View File

@@ -12,15 +12,15 @@ new MutationObserver(muts => {
async function handle(el) {
try {
const cmd = el.dataset.cmd || 'cookies';
const req = el.textContent.trim() ? JSON.parse(el.textContent) : { cmd: 'cookies' };
const cmd = req.cmd || 'cookies';
let resp;
if (cmd === 'cookies') {
resp = await chrome.runtime.sendMessage({ action: 'getCookies', url: location.href });
resp = await chrome.runtime.sendMessage({ action: 'cookies', url: req.url || location.href });
} else if (cmd === 'cdp') {
const method = el.dataset.method;
const params = el.dataset.params ? JSON.parse(el.dataset.params) : {};
const tabId = el.dataset.tabid ? parseInt(el.dataset.tabid) : undefined;
resp = await chrome.runtime.sendMessage({ action: 'cdp', method, params, tabId });
resp = await chrome.runtime.sendMessage({ action: 'cdp', method: req.method, params: req.params || {}, tabId: req.tabId });
} else if (cmd === 'tabs') {
resp = await chrome.runtime.sendMessage({ action: 'tabs', method: req.method, tabId: req.tabId });
} else {
resp = { ok: false, error: 'unknown cmd: ' + cmd };
}

View File

@@ -10,7 +10,7 @@ async function fetchCookies() {
try {
const [tab] = await chrome.tabs.query({ active: true, currentWindow: true });
if (!tab?.url) { out.textContent = 'No active tab'; return; }
const resp = await chrome.runtime.sendMessage({ action: 'getCookies', url: tab.url });
const resp = await chrome.runtime.sendMessage({ action: 'cookies', url: tab.url });
if (!resp?.ok) { out.textContent = 'Error: ' + (resp?.error || 'unknown'); return; }
if (!resp.data.length) { out.textContent = '(no cookies)'; return; }
// 展示带标记