adspower-browser 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json ADDED
@@ -0,0 +1,31 @@
1
+ {
2
+ "name": "adspower-browser",
3
+ "version": "1.0.0",
4
+ "main": "build/cli.js",
5
+ "type": "commonjs",
6
+ "bin": {
7
+ "adspower-browser": "./build/cli.js"
8
+ },
9
+ "scripts": {
10
+ "build": "tsup",
11
+ "adspower": "node build/cli.js"
12
+ },
13
+ "dependencies": {
14
+ "axios": "^1.8.4",
15
+ "playwright": "^1.51.1",
16
+ "zod": "^3.24.2"
17
+ },
18
+ "devDependencies": {
19
+ "@adspower/local-api-core": "workspace:*",
20
+ "@types/node": "^22.13.13",
21
+ "typescript": "^5.8.2",
22
+ "tsup": "^8.5.1"
23
+ },
24
+ "engines": {
25
+ "node": ">=18.0.0"
26
+ },
27
+ "files": [
28
+ "build",
29
+ "skills"
30
+ ]
31
+ }
@@ -0,0 +1,145 @@
1
+ ---
2
+ name: adspower-browser
3
+ description: Runs AdsPower Local API operations via the adspower-browser CLI (no MCP required). Use when the user asks to create or manage AdsPower browsers, groups, proxies, or check status; run Node CLI commands that call the same handlers as the MCP server.
4
+ ---
5
+
6
+ # AdsPower Local API with adspower-browser
7
+
8
+ The Skills CLI (npx adspower-browser) is the package manager for operate AdsPower browser profiles, groups, proxies, and application/category lists via the **adspower-browser** CLI.
9
+
10
+ ## When to Use This Skill
11
+
12
+ Apply when the user:
13
+
14
+ - Asks to create, update, delete, or list AdsPower browser profiles
15
+ - Mentions opening or closing browsers/profiles, fingerprint, UA, or proxy
16
+ - Wants to manage groups, proxies, or check API status
17
+ - Refers to AdsPower or adspower-browser (and MCP is not running or not desired)
18
+
19
+ Ensure AdsPower is running (default port 50325). Set `PORT` and `API_KEY` via environment or `--port` / `--api-key` if needed.
20
+
21
+ ## How to Run
22
+
23
+ ```bash
24
+ adspower-browser [--port PORT] [--api-key KEY] <command> [<arg>]
25
+ ```
26
+
27
+ **Two forms for `<arg>`:**
28
+
29
+ 1. **Single value (shorthand)** — for profile-related commands, pass one profile ID or number:
30
+ - `adspower-browser open-browser <ProfileId>`
31
+ - `adspower-browser close-browser <ProfileId>`
32
+ - `adspower-browser get-profile-cookies <ProfileId>`
33
+ - `adspower-browser get-browser-active <ProfileId>`
34
+ - `adspower-browser get-profile-ua <ProfileId>` (single ID)
35
+ - `adspower-browser new-fingerprint <ProfileId>` (single ID)
36
+
37
+ 2. **JSON string** — full parameters for any command (see Command Reference below):
38
+ - `adspower-browser open-browser '{"profileId":"abc123","launchArgs":"..."}'`
39
+ - Commands with no params: omit `<arg>` or use `'{}'`.
40
+
41
+ ## Essential Commands
42
+
43
+ ### Browser profile – open/close
44
+
45
+ ```bash
46
+ adspower-browser open-browser <profileId> # Or JSON: profileId, profileNo?, ipTab?, launchArgs?, clearCacheAfterClosing?, cdpMask?
47
+ adspower-browser close-browser <profileId> # Or JSON: profileId? | profileNo? (one required)
48
+ ```
49
+
50
+ ### Browser profile – create/update/delete/list
51
+
52
+ ```bash
53
+ adspower-browser create-browser '{"groupId":"0","proxyid":"random",...}' # groupId + account field + proxy required
54
+ adspower-browser update-browser '{"profileId":"...",...}' # profileId required
55
+ adspower-browser delete-browser '{"profileIds":["..."]}' # profileIds required
56
+ adspower-browser get-browser-list '{}' # Or groupId?, limit?, page?, profileId?, profileNo?, sortType?, sortOrder?
57
+ adspower-browser get-opened-browser # No params
58
+ ```
59
+
60
+ ### Browser profile – move/cookies/UA/fingerprint/cache/share/active
61
+
62
+ ```bash
63
+ adspower-browser move-browser '{"groupId":"1","userIds":["..."]}' # groupId + userIds required
64
+ adspower-browser get-profile-cookies <profileId> # Or JSON: profileId? | profileNo?
65
+ adspower-browser get-profile-ua <profileId> # Or JSON: profileId[]? | profileNo[]? (up to 10)
66
+ adspower-browser close-all-profiles # No params
67
+ adspower-browser new-fingerprint <profileId> # Or JSON: profileId[]? | profileNo[]? (up to 10)
68
+ adspower-browser delete-cache-v2 '{"profileIds":["..."],"type":["cookie","history"]}' # type: local_storage|indexeddb|extension_cache|cookie|history|image_file
69
+ adspower-browser share-profile '{"profileIds":["..."],"receiver":"email@example.com"}' # receiver required; shareType?, content?
70
+ adspower-browser get-browser-active <profileId> # Or JSON: profileId? | profileNo?
71
+ adspower-browser get-cloud-active '{"userIds":"id1,id2"}' # userIds comma-separated, max 100
72
+ ```
73
+
74
+ ### Group
75
+
76
+ ```bash
77
+ adspower-browser create-group '{"groupName":"My Group","remark":"..."}' # groupName required
78
+ adspower-browser update-group '{"groupId":"1","groupName":"New Name"}' # groupId + groupName required; remark? (null to clear)
79
+ adspower-browser get-group-list '{}' # groupName?, size?, page?
80
+ ```
81
+
82
+ ### Application (categories)
83
+
84
+ ```bash
85
+ adspower-browser check-status # No params – API availability
86
+ adspower-browser get-application-list '{}' # category_id?, page?, limit?
87
+ ```
88
+
89
+ ### Proxy
90
+
91
+ ```bash
92
+ adspower-browser create-proxy '{"proxies":[{"type":"http","host":"127.0.0.1","port":"8080"}]}' # type, host, port required per item
93
+ adspower-browser update-proxy '{"proxyId":"...","host":"..."}' # proxyId required
94
+ adspower-browser get-proxy-list '{}' # limit?, page?, proxyId?
95
+ adspower-browser delete-proxy '{"proxyIds":["..."]}' # proxyIds required, max 100
96
+ ```
97
+
98
+ ## Command Reference (full interface and parameters)
99
+
100
+ All parameter names are camelCase in JSON.
101
+
102
+ ### Browser Profile Management
103
+
104
+ See [references/browser-profile-management.md](references/browser-profile-management.md) for open-browser, close-browser, create-browser, update-browser, delete-browser, get-browser-list, get-opened-browser, move-browser, get-profile-cookies, get-profile-ua, close-all-profiles, new-fingerprint, delete-cache-v2, share-profile, get-browser-active, get-cloud-active and their parameters.
105
+
106
+ ### Group Management
107
+
108
+ See [references/group-management.md](references/group-management.md) for create-group, update-group, and get-group-list parameters.
109
+
110
+ ### Application Management
111
+
112
+ See [references/application-management.md](references/application-management.md) for check-status and get-application-list parameters.
113
+
114
+ ### Proxy Management
115
+
116
+ See [references/proxy-management.md](references/proxy-management.md) for create-proxy, update-proxy, get-proxy-list, and delete-proxy parameters.
117
+
118
+ ### UserProxyConfig (inline proxy config for create-browser / update-browser)
119
+
120
+ See [references/user-proxy-config.md](references/user-proxy-config.md) for all fields (proxy_soft, proxy_type, proxy_host, proxy_port, etc.) and example.
121
+
122
+ ### FingerprintConfig (fingerprint config for create-browser / update-browser)
123
+
124
+ See [references/fingerprint-config.md](references/fingerprint-config.md) for all fields (timezone, language, WebRTC, browser_kernel_config, random_ua, TLS, etc.) and example.
125
+
126
+ ## Automation (Not Supported by This CLI)
127
+
128
+ Commands such as `navigate`, `click-element`, `fill-input`, `screenshot` depend on a persistent browser connection and are **not** exposed by this CLI. Use the **local-api-mcp** MCP server for automation.
129
+
130
+ ## Deep-Dive Documentation
131
+
132
+ Reference docs with full enum values and field lists:
133
+
134
+ | Reference | Description | When to use |
135
+ |-----------|-------------|-------------|
136
+ | [references/browser-profile-management.md](references/browser-profile-management.md) | **open-browser**, **close-browser**, **create-browser**, **update-browser**, **delete-browser**, **get-browser-list**, **get-opened-browser**, **move-browser**, **get-profile-cookies**, **get-profile-ua**, **close-all-profiles**, **new-fingerprint**, **delete-cache-v2**, **share-profile**, **get-browser-active**, **get-cloud-active** parameters. | Any browser profile operation (open, create, update, delete, list, move, cookies, UA, cache, share, status). |
137
+ | [references/group-management.md](references/group-management.md) | **create-group**, **update-group**, **get-group-list** parameters. | Creating, updating, or listing browser groups. |
138
+ | [references/application-management.md](references/application-management.md) | **check-status**, **get-application-list** parameters. | Checking API availability or listing applications (categories). |
139
+ | [references/proxy-management.md](references/proxy-management.md) | **create-proxy**, **update-proxy**, **get-proxy-list**, **delete-proxy** parameters and enums. | Creating, updating, listing, or deleting proxies. |
140
+ | [references/user-proxy-config.md](references/user-proxy-config.md) | Full **userProxyConfig** field list (proxy_soft, proxy_type, proxy_host, proxy_port, etc.) and example. | Building inline proxy config for create-browser / update-browser when not using **proxyid**. |
141
+ | [references/fingerprint-config.md](references/fingerprint-config.md) | Full **fingerprintConfig** field list (timezone, language, WebRTC, browser_kernel_config, random_ua, TLS, etc.) and example. | Building or editing fingerprint config for create-browser / update-browser. |
142
+ | [references/browser-kernel-config.md](references/browser-kernel-config.md) | **type** and **version** for `fingerprintConfig.browser_kernel_config`. Version must match type (Chrome vs Firefox). | Pinning or choosing a specific browser kernel (Chrome/Firefox and version) when creating or updating a browser. |
143
+ | [references/ua-system-version.md](references/ua-system-version.md) | **ua_system_version** enum for `fingerprintConfig.random_ua`: specific OS versions, generic “any version” per system, and omit behavior. | Constraining or randomizing UA by OS (e.g. Android only, or “any macOS version”) when creating or updating a browser. |
144
+
145
+ Use these when you need the exact allowed values or semantics; the main skill text above only summarizes.
@@ -0,0 +1,11 @@
1
+ # Application Management
2
+
3
+ **check-status** — Check the availability of the current device API interface (Connection Status).
4
+
5
+ - No parameters.
6
+
7
+ **get-application-list** — Get the list of applications (categories).
8
+
9
+ - **category_id** (optional): Extension category_id.
10
+ - **page** (optional): Default 1.
11
+ - **limit** (optional): 1–100. Values per page.
@@ -0,0 +1,26 @@
1
+ # Browser kernel config
2
+
3
+ Used under **fingerprintConfig** → **browser_kernel_config**. Version and type must match: only versions valid for the chosen type are allowed.
4
+
5
+ ## type (optional)
6
+
7
+ | Value | Default |
8
+ |----------|----------|
9
+ | `chrome` | default |
10
+ | `firefox`| — |
11
+
12
+ ## version (optional)
13
+
14
+ Default: `"ua_auto"`.
15
+
16
+ ### Chrome
17
+
18
+ `92`, `99`, `102`, `105`, `108`, `111`, `114`, `115`, `116`, `117`, `118`, `119`, `120`, `121`, `122`, `123`, `124`, `125`, `126`, `127`, `128`, `129`, `130`, `131`, `132`, `133`, `134`, `135`, `136`, `137`, `138`, `139`, `140`, `141`, `142`, `143`, `144`, `ua_auto`
19
+
20
+ ### Firefox
21
+
22
+ `100`, `107`, `114`, `120`, `123`, `126`, `129`, `132`, `135`, `138`, `141`, `144`, `ua_auto`
23
+
24
+ ## Example
25
+
26
+ `"browser_kernel_config": { "version": "ua_auto", "type": "chrome" }`
@@ -0,0 +1,94 @@
1
+ # Browser Profile Management
2
+
3
+ **open-browser** — Open the browser (environment/profile).
4
+
5
+ - **profileId** (required): Unique profile ID, generated after creating profile.
6
+ - **profileNo** (optional): Profile number; priority given to profileId when both provided.
7
+ - **ipTab** (optional): `'0'` | `'1'`, default 0. Whether to open the IP detection page.
8
+ - **launchArgs** (optional): Chrome launch args or startup URL.
9
+ - **clearCacheAfterClosing** (optional): `'0'` | `'1'`, default 0.
10
+ - **cdpMask** (optional): `'0'` | `'1'`, default 0. Whether to mask CDP detection.
11
+
12
+ **close-browser** — Close the browser.
13
+
14
+ - **profileId** (optional) or **profileNo** (optional): One required. The profile to stop.
15
+
16
+ **create-browser** — Create a browser.
17
+
18
+ - **groupId** (required): Numeric string; use `"0"` for Ungrouped. Get list via get-group-list.
19
+ - At least one of **username**, **password**, **cookie**, **fakey** (required): Account information.
20
+ - **userProxyConfig** or **proxyid** (one required): Custom proxy config (see [user-proxy-config.md](user-proxy-config.md)) or saved proxy ID / `"random"`.
21
+ - **name** (optional, max 100): Account name.
22
+ - **platform** (optional): Platform domain, e.g. facebook.com.
23
+ - **remark** (optional, max 1500): Remarks.
24
+ - **tabs** (optional): URLs to open on startup, e.g. `["https://www.google.com"]`.
25
+ - **repeatConfig** (optional): `0` | `2` | `3` | `4`. Account deduplication.
26
+ - **ignoreCookieError** (optional): `'0'` | `'1'`. Handle cookie verification failures.
27
+ - **ip**, **country** (see [country-code.md](country-code.md)), **region**, **city** (optional).
28
+ - **ipchecker** (optional): `'ip2location'` | `'ipapi'`. IP query channel.
29
+ - **categoryId** (optional): Use get-application-list to get list.
30
+ - **fingerprintConfig** (optional): Browser fingerprint config; see [fingerprint-config.md](fingerprint-config.md).
31
+
32
+ **update-browser** — Update the browser.
33
+
34
+ - **profileId** (required): The profile id of the browser to update.
35
+ - **platform**, **tabs**, **cookie**, **username**, **password**, **fakey**, **ignoreCookieError** (`'0'`|`'1'`), **groupId**, **name** (max 100), **remark** (max 1500), **country** (see [country-code.md](country-code.md)), **region**, **city**, **ip**, **categoryId**, **userProxyConfig** (see [user-proxy-config.md](user-proxy-config.md)), **proxyid**, **fingerprintConfig** (see [fingerprint-config.md](fingerprint-config.md)), **launchArgs** (all optional).
36
+
37
+ **delete-browser** — Delete the browser(s).
38
+
39
+ - **profileIds** (required): Array of profile ids to delete.
40
+
41
+ **get-browser-list** — Get the list of browsers.
42
+
43
+ - **groupId** (optional): Numeric string; query by group ID; empty searches all groups.
44
+ - **limit** (optional): 1–200, default 50. Profiles per page.
45
+ - **page** (optional): Default 1.
46
+ - **profileId** (optional): Array, e.g. `["h1yynkm","h1yynks"]`.
47
+ - **profileNo** (optional): Array, e.g. `["123","124"]`.
48
+ - **sortType** (optional): `'profile_no'` | `'last_open_time'` | `'created_time'`.
49
+ - **sortOrder** (optional): `'asc'` | `'desc'`.
50
+
51
+ **get-opened-browser** — Get the list of opened browsers.
52
+
53
+ - No parameters.
54
+
55
+ **move-browser** — Move browsers to a group.
56
+
57
+ - **groupId** (required): Numeric string. Target group id; use get-group-list to get list.
58
+ - **userIds** (required): Array of browser profile ids to move.
59
+
60
+ **get-profile-cookies** — Query cookies of the specified profile. One profile per request.
61
+
62
+ - **profileId** (optional) or **profileNo** (optional): One required.
63
+
64
+ **get-profile-ua** — Query User-Agent of specified profiles. Up to 10 per request.
65
+
66
+ - **profileId** (optional): Array. Or **profileNo** (optional): Array. At least one element required.
67
+
68
+ **close-all-profiles** — Close all opened profiles on the current device.
69
+
70
+ - No parameters.
71
+
72
+ **new-fingerprint** — Generate a new fingerprint for specified profiles. Up to 10 per request.
73
+
74
+ - **profileId** (optional): Array. Or **profileNo** (optional): Array.
75
+
76
+ **delete-cache-v2** — Clear local cache of specific profiles. Ensure no open browsers when using.
77
+
78
+ - **profileIds** (required): Array of profile ids.
79
+ - **type** (required): Array of `'local_storage'` | `'indexeddb'` | `'extension_cache'` | `'cookie'` | `'history'` | `'image_file'`.
80
+
81
+ **share-profile** — Share profiles via account email or phone. Max 200 per request.
82
+
83
+ - **profileIds** (required): Array.
84
+ - **receiver** (required): Account email or phone number, no area code.
85
+ - **shareType** (optional): 1 for email (default), 2 for phone number.
86
+ - **content** (optional): Array of `'name'` | `'proxy'` | `'remark'` | `'tabs'`. Shared content.
87
+
88
+ **get-browser-active** — Get active browser profile information.
89
+
90
+ - **profileId** (optional) or **profileNo** (optional): One required.
91
+
92
+ **get-cloud-active** — Query status of browser profiles by user_id. Up to 100 per request.
93
+
94
+ - **userIds** (required): Comma-separated profile IDs string, max 100. Unique profile ID generated after creating profile.
@@ -0,0 +1,34 @@
1
+ # Chrome TLS Cipher Suites (tls enum)
2
+
3
+ **tls** is only supported when the browser kernel is **Chrome**. Use comma-separated hex codes in **fingerprintConfig.tls**, e.g. `"0xC02C,0xC030"`.
4
+
5
+ | Name | Hex code |
6
+ |------|----------|
7
+ | TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384 | 0xC02C |
8
+ | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | 0xC030 |
9
+ | TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256 | 0xC02B |
10
+ | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | 0xC02F |
11
+ | TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256 | 0xCCA9 |
12
+ | TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256 | 0xCCA8 |
13
+ | TLS_DHE_RSA_WITH_AES_256_GCM_SHA384 | 0x009F |
14
+ | TLS_DHE_RSA_WITH_AES_128_GCM_SHA256 | 0x009E |
15
+ | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384 | 0xC024 |
16
+ | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | 0xC028 |
17
+ | TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA | 0xC00A |
18
+ | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | 0xC014 |
19
+ | TLS_DHE_RSA_WITH_AES_256_CBC_SHA256 | 0x006B |
20
+ | TLS_DHE_RSA_WITH_AES_256_CBC_SHA | 0x0039 |
21
+ | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256 | 0xC023 |
22
+ | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | 0xC027 |
23
+ | TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA | 0xC009 |
24
+ | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | 0xC013 |
25
+ | TLS_DHE_RSA_WITH_AES_128_CBC_SHA256 | 0x0067 |
26
+ | TLS_DHE_RSA_WITH_AES_128_CBC_SHA | 0x0033 |
27
+ | TLS_RSA_WITH_AES_256_GCM_SHA384 | 0x009D |
28
+ | TLS_RSA_WITH_AES_128_GCM_SHA256 | 0x009C |
29
+ | TLS_RSA_WITH_AES_256_CBC_SHA256 | 0x003D |
30
+ | TLS_RSA_WITH_AES_128_CBC_SHA256 | 0x003C |
31
+ | TLS_RSA_WITH_AES_256_CBC_SHA | 0x0035 |
32
+ | TLS_RSA_WITH_AES_128_CBC_SHA | 0x002F |
33
+ | TLS_AES_128_CCM_8_SHA256 | 0x1305 |
34
+ | TLS_AES_128_CCM_SHA256 | 0x1304 |
@@ -0,0 +1,253 @@
1
+ # Country Code (country 字段取值)
2
+
3
+ **country** 传参使用下表左侧的 **code**(小写两字母),用于 create-browser / update-browser 等接口的 `country` 字段。参见 `schemas.ts` 中的 createBrowserSchema、updateBrowserSchema。
4
+
5
+ | Code | Country |
6
+ |------|---------|
7
+ | ad | Andorra |
8
+ | ae | United Arab Emirates |
9
+ | af | Afghanistan |
10
+ | ag | Antigua & Barbuda |
11
+ | ai | Anguilla |
12
+ | al | Albania |
13
+ | am | Armenia |
14
+ | ao | Angola |
15
+ | aq | Antarctica |
16
+ | ar | Argentina |
17
+ | as | American Samoa |
18
+ | at | Austria |
19
+ | au | Australia |
20
+ | aw | Aruba |
21
+ | ax | Åland Islands |
22
+ | az | Azerbaijan |
23
+ | ba | Bosnia & Herzegovina |
24
+ | bb | Barbados |
25
+ | bd | Bangladesh |
26
+ | be | Belgium |
27
+ | bf | Burkina |
28
+ | bg | Bulgaria |
29
+ | bh | Bahrain |
30
+ | bi | Burundi |
31
+ | bj | Benin |
32
+ | bl | Saint Barthélemy |
33
+ | bm | Bermuda |
34
+ | bn | Brunei |
35
+ | bo | Bolivia |
36
+ | bq | Caribbean Netherlands |
37
+ | br | Brazil |
38
+ | bs | The Bahamas |
39
+ | bt | Bhutan |
40
+ | bv | Bouvet Island |
41
+ | bw | Botswana |
42
+ | by | Belarus |
43
+ | bz | Belize |
44
+ | ca | Canada |
45
+ | cc | Cocos (Keeling) Islands |
46
+ | cd | Democratic Republic of the Congo |
47
+ | cf | Central African Republic |
48
+ | cg | Republic of the Congo |
49
+ | ch | Switzerland |
50
+ | ci | Côte d'Ivoire |
51
+ | cl | Chile |
52
+ | cm | Cameroon |
53
+ | cn | China |
54
+ | co | Colombia |
55
+ | cr | Costa Rica |
56
+ | cu | Cuba |
57
+ | cv | Cape Verde |
58
+ | cx | Christmas Island |
59
+ | cy | Cyprus |
60
+ | cz | Czech Republic |
61
+ | de | Germany |
62
+ | dj | Djibouti |
63
+ | dk | Denmark |
64
+ | dm | Dominica |
65
+ | do | Dominican Republic |
66
+ | dz | Algeria |
67
+ | ec | Ecuador |
68
+ | ee | Estonia |
69
+ | eg | Egypt |
70
+ | eh | Western Sahara |
71
+ | er | Eritrea |
72
+ | es | Spain |
73
+ | et | Ethiopia |
74
+ | fi | Finland |
75
+ | fj | Fiji |
76
+ | fk | Falkland Islands |
77
+ | fm | Federated States of Micronesia |
78
+ | fo | Faroe Islands |
79
+ | fr | France |
80
+ | ga | Gabon |
81
+ | gb | Great Britain |
82
+ | gd | Grenada |
83
+ | ge | Georgia |
84
+ | gf | French Guiana |
85
+ | gg | Guernsey |
86
+ | gh | Ghana |
87
+ | gi | Gibraltar |
88
+ | gl | Greenland |
89
+ | gm | Gambia |
90
+ | gn | Guinea |
91
+ | gp | Guadeloupe |
92
+ | gq | Equatorial Guinea |
93
+ | gr | Greece |
94
+ | gs | South Georgia and the South Sandwich Islands |
95
+ | gt | Guatemala |
96
+ | gu | Guam |
97
+ | gw | Guinea-Bissau |
98
+ | gy | Guyana |
99
+ | hk | China Hong Kong |
100
+ | hm | Heard Island and McDonald Islands |
101
+ | hn | Honduras |
102
+ | hr | Croatia |
103
+ | ht | Haiti |
104
+ | hu | Hungary |
105
+ | id | Indonesia |
106
+ | ie | Ireland |
107
+ | il | Israel |
108
+ | im | Isle of Man |
109
+ | in | India |
110
+ | io | British Indian Ocean Territory |
111
+ | iq | Iraq |
112
+ | ir | Iran |
113
+ | is | Iceland |
114
+ | it | Italy |
115
+ | je | Jersey |
116
+ | jm | Jamaica |
117
+ | jo | Jordan |
118
+ | jp | Japan |
119
+ | ke | Kenya |
120
+ | kg | Kyrgyzstan |
121
+ | kh | Cambodia |
122
+ | ki | Kiribati |
123
+ | km | The Comoros |
124
+ | kn | St. Kitts & Nevis |
125
+ | kp | North Korea |
126
+ | kr | South Korea |
127
+ | kw | Kuwait |
128
+ | ky | Cayman Islands |
129
+ | kz | Kazakhstan |
130
+ | la | Laos |
131
+ | lb | Lebanon |
132
+ | lc | St. Lucia |
133
+ | li | Liechtenstein |
134
+ | lk | Sri Lanka |
135
+ | lr | Liberia |
136
+ | ls | Lesotho |
137
+ | lt | Lithuania |
138
+ | lu | Luxembourg |
139
+ | lv | Latvia |
140
+ | ly | Libya |
141
+ | ma | Morocco |
142
+ | mc | Monaco |
143
+ | md | Moldova |
144
+ | me | Montenegro |
145
+ | mf | Saint Martin (France) |
146
+ | mg | Madagascar |
147
+ | mh | Marshall islands |
148
+ | mk | Republic of Macedonia (FYROM) |
149
+ | ml | Mali |
150
+ | mm | Myanmar (Burma) |
151
+ | mn | Mongolia |
152
+ | mo | China Macao |
153
+ | mp | Northern Mariana Islands |
154
+ | mq | Martinique |
155
+ | mr | Mauritania |
156
+ | ms | Montserrat |
157
+ | mt | Malta |
158
+ | mu | Mauritius |
159
+ | mv | Maldives |
160
+ | mw | Malawi |
161
+ | mx | Mexico |
162
+ | my | Malaysia |
163
+ | mz | Mozambique |
164
+ | na | Namibia |
165
+ | nc | New Caledonia |
166
+ | ne | Niger |
167
+ | nf | Norfolk Island |
168
+ | ng | Nigeria |
169
+ | ni | Nicaragua |
170
+ | nl | Netherlands |
171
+ | no | Norway |
172
+ | np | Nepal |
173
+ | nr | Nauru |
174
+ | nu | Niue |
175
+ | nz | New Zealand |
176
+ | om | Oman |
177
+ | pa | Panama |
178
+ | pe | Peru |
179
+ | pf | French polynesia |
180
+ | pg | Papua New Guinea |
181
+ | ph | The Philippines |
182
+ | pk | Pakistan |
183
+ | pl | Poland |
184
+ | pm | Saint-Pierre and Miquelon |
185
+ | pn | Pitcairn Islands |
186
+ | pr | Puerto Rico |
187
+ | ps | Palestinian territories |
188
+ | pt | Portugal |
189
+ | pw | Palau |
190
+ | py | Paraguay |
191
+ | qa | Qatar |
192
+ | re | Réunion |
193
+ | ro | Romania |
194
+ | rs | Serbia |
195
+ | ru | Russian Federation |
196
+ | rw | Rwanda |
197
+ | sa | Saudi Arabia |
198
+ | sb | Solomon Islands |
199
+ | sc | Seychelles |
200
+ | sd | Sudan |
201
+ | se | Sweden |
202
+ | sg | Singapore |
203
+ | sh | St. Helena & Dependencies |
204
+ | si | Slovenia |
205
+ | sj | Template:Country data SJM Svalbard |
206
+ | sk | Slovakia |
207
+ | sl | Sierra Leone |
208
+ | sm | San Marino |
209
+ | sn | Senegal |
210
+ | so | Somalia |
211
+ | sr | Suriname |
212
+ | ss | South Sudan |
213
+ | st | Sao Tome & Principe |
214
+ | sv | El Salvador |
215
+ | sy | Syria |
216
+ | sz | Swaziland |
217
+ | tc | Turks & Caicos Islands |
218
+ | td | Chad |
219
+ | tf | French Southern Territories |
220
+ | tg | Togo |
221
+ | th | Thailand |
222
+ | tj | Tajikistan |
223
+ | tk | Tokelau |
224
+ | tl | Timor-Leste (East Timor) |
225
+ | tm | Turkmenistan |
226
+ | tn | Tunisia |
227
+ | to | Tonga |
228
+ | tr | Turkey |
229
+ | tt | Trinidad & Tobago |
230
+ | tv | Tuvalu |
231
+ | tw | China Taiwan |
232
+ | tz | Tanzania |
233
+ | ua | Ukraine |
234
+ | ug | Uganda |
235
+ | um | United States Minor Outlying Islands |
236
+ | us | United States of America (USA) |
237
+ | uy | Uruguay |
238
+ | uz | Uzbekistan |
239
+ | va | Vatican City (The Holy See) |
240
+ | vc | St. Vincent & the Grenadines |
241
+ | ve | Venezuela |
242
+ | vg | British Virgin Islands |
243
+ | vi | United States Virgin Islands |
244
+ | vn | Vietnam |
245
+ | vu | Vanuatu |
246
+ | wf | Wallis and Futuna |
247
+ | ws | Samoa |
248
+ | ye | Yemen |
249
+ | yt | Mayotte |
250
+ | za | South Africa |
251
+ | zm | Zambia |
252
+ | zw | Zimbabwe |
253
+ | ck | Cook Islands |
@@ -0,0 +1,49 @@
1
+ # FingerprintConfig (fingerprint config for create-browser / update-browser)
2
+
3
+ **fingerprintConfig** is aligned with AdsPower Local API **fingerprint_config**; all fields are optional.
4
+
5
+ - **automatic_timezone** (optional): Auto timezone by IP. `'0'` custom / `'1'` by IP (default)
6
+ - **timezone** (optional): Timezone when automatic_timezone=0, e.g. `Asia/Shanghai`
7
+ - **location_switch** (optional): Location by IP. `'0'` custom / `'1'` by IP (default)
8
+ - **longitude** (optional): Custom longitude when location_switch=0, -180 to 180, up to 6 decimals
9
+ - **latitude** (optional): Custom latitude when location_switch=0, -90 to 90, up to 6 decimals
10
+ - **accuracy** (optional): Location accuracy in meters when location_switch=0, 10–5000 integer, default 1000
11
+ - **location** (optional): Site location permission. `'ask'` (default) / `'allow'` / `'block'`
12
+ - **language_switch** (optional): Language by IP country. `'0'` custom / `'1'` by IP (default)
13
+ - **language** (optional): Custom languages when language_switch=0, e.g. `["en-US", "zh-CN"]`
14
+ - **page_language_switch** (optional): Match UI language to language. `'0'` off / `'1'` on (default); requires Chrome 109+ Win / 119+ macOS, AdsPower v2.6.72+
15
+ - **page_language** (optional): Page language when page_language_switch=0, e.g. `en-US`
16
+ - **ua** (optional): Custom User-Agent string; when set, takes precedence over **random_ua** (random_ua is not sent). Omit for random UA.
17
+ - **screen_resolution** (optional): Screen resolution. `'none'` follow computer (default) / `'random'` / or `"width_height"` e.g. `"1024_600"`
18
+ - **fonts** (optional): Font list, e.g. `["Arial", "Times New Roman"]` or `["all"]`
19
+ - **canvas** (optional): Canvas fingerprint. `'0'` computer default / `'1'` add noise (default)
20
+ - **webgl** (optional): WebGL metadata. `'0'` computer default / `'2'` custom (requires **webgl_config**) / `'3'` random
21
+ - **webgl_image** (optional): WebGL image fingerprint. `'0'` computer default / `'1'` add noise (default)
22
+ - **webgl_config** (optional): When webgl=2, **required**; vendor and renderer cannot be empty.
23
+ - **unmasked_vendor** (required when webgl=2): e.g. `"Google Inc."`
24
+ - **unmasked_renderer** (required when webgl=2): e.g. `"ANGLE (Intel(R) HD Graphics 620 Direct3D11 vs_5_0 ps_5_0)"`
25
+ - **webgpu** (optional): `{ "webgpu_switch": "0" | "1" | "2" }` — 0 Disabled, 1 WebGL based matching, 2 Real. V2.6.8.1+
26
+ - **flash** (optional): Flash. `'block'` (default) / `'allow'`
27
+ - **webrtc** (optional): WebRTC. `'disabled'` (default) / `'forward'` / `'proxy'` / `'local'`
28
+ - **audio** (optional): Audio fingerprint. `'0'` close / `'1'` add noise (default)
29
+ - **do_not_track** (optional): DNT. `'default'` / `'true'` (open) / `'false'` (close)
30
+ - **hardware_concurrency** (optional): CPU cores. `'2'` | `'4'` | `'6'` | `'8'` | `'16'`; omit to follow computer
31
+ - **device_memory** (optional): Device memory (GB). `'2'` | `'4'` | `'6'` | `'8'`; omit to follow computer
32
+ - **scan_port_type** (optional): Port scan protection. `'0'` close / `'1'` enable (default)
33
+ - **allow_scan_ports** (optional): Ports allowed when scan_port_type=1, e.g. `["4000","4001"]`
34
+ - **media_devices** (optional): Media devices. `'0'` off / `'1'` noise (count from local) / `'2'` noise (use **media_devices_num**). V2.6.4.2+
35
+ - **media_devices_num** (optional): When media_devices=2: `{ "audioinput_num": "1"-"9", "videoinput_num": "1"-"9", "audiooutput_num": "1"-"9" }`. V2.6.4.2+
36
+ - **client_rects** (optional): ClientRects. `'0'` computer default / `'1'` add noise. V3.6.2+
37
+ - **device_name_switch** (optional): Device name. `'0'` close / `'1'` mask / `'2'` custom (**device_name**). V3.6.25+
38
+ - **device_name** (optional): Custom device name when device_name_switch=2. V2.4.8.1+
39
+ - **speech_switch** (optional): SpeechVoices. `'0'` computer default / `'1'` replace. V3.11.10+
40
+ - **mac_address_config** (optional): MAC address. `{ "model": "0"|"1"|"2", "address"?: string }` — 0 use computer, 1 match, 2 custom (address required). V4.3.9+
41
+ - **gpu** (optional): GPU. `'0'` follow Local settings / `'1'` turn on / `'2'` turn off
42
+ - **browser_kernel_config** (optional): Browser kernel; type and version must match. See [browser-kernel-config.md](browser-kernel-config.md)
43
+ - **random_ua** (optional): Random UA; ignored when **ua** (custom UA) is provided.
44
+ - **ua_version** (optional): UA version string array
45
+ - **ua_system_version** (optional): System version enum array. See [ua-system-version.md](ua-system-version.md)
46
+ - **tls_switch** (optional): Enable custom TLS. `'0'` (default) / `'1'`
47
+ - **tls** (optional): **Chrome kernel only**. Comma-separated TLS hex codes when tls_switch=1, e.g. `"0xC02C,0xC030"`. See [chrome-tls-cipher.md](chrome-tls-cipher.md)
48
+
49
+ Example: `"fingerprintConfig":{"timezone":"America/New_York","language":["en-US"],"webrtc":"proxy","browser_kernel_config":{"version":"ua_auto","type":"chrome"}}`
@@ -0,0 +1,18 @@
1
+ # Group Management
2
+
3
+ **create-group** — Create a browser group.
4
+
5
+ - **groupName** (required): Name of the group to create.
6
+ - **remark** (optional): Remark of the group.
7
+
8
+ **update-group** — Update the browser group.
9
+
10
+ - **groupId** (required): Numeric string. Id of the group to update; use get-group-list to get list.
11
+ - **groupName** (required): New name of the group.
12
+ - **remark** (optional, nullable): New remark; set null to clear.
13
+
14
+ **get-group-list** — Get the list of groups.
15
+
16
+ - **groupName** (optional): Name to search (like search).
17
+ - **size** (optional): Page size, max 100, default 10.
18
+ - **page** (optional): Default 1.