linked-danis
b0bcba2922
feat: add stepDelay config option
...
Add configurable delay between agent steps.
Previously hardcoded to 0.4s.
Changes:
- Add stepDelay?: number to AgentConfig
- Use config value with 0.4s default
2026-03-13 14:22:37 +01:00
Simon
e2c00b1bfc
chore(ext): bump version to 0.1.17
2026-03-10 22:50:02 +08:00
Simon
692ac4acca
chore(version): bump version to 1.5.5
2026-03-10 22:49:03 +08:00
Simon
aa88221845
Merge branch 'main' of https://github.com/alibaba/page-agent
2026-03-10 22:06:51 +08:00
Simon
b425e48afe
docs: guideline against AI-generated PRs
2026-03-10 22:06:41 +08:00
Simon
ff54b363aa
Merge pull request #179 from JasonOA888/fix/contenteditable-input-events
...
fix(page-controller): improve contenteditable input with proper events
2026-03-10 21:04:05 +08:00
Simon
4d931b4430
chore: comments; spell check
2026-03-10 21:02:48 +08:00
JasonOA888
6054ca1217
docs(page-controller): document contenteditable limitations and execCommand fallback
...
## Changes
Based on @gaomeng1900's comprehensive testing feedback:
1. **Document known limitations**
- Slate.js and Draft.js do not work with synthetic events
- Draft.js: Cannot be supported via DOM manipulation (by design, unmaintained)
- Monaco/CodeMirror: Require direct JS instance access
2. **Clarify tested editors**
- Works: Quill, LinkedIn, simple contenteditable editors
- Does not work: Slate.js, Draft.js
3. **Preserve execCommand as fallback**
- execCommand works better for LinkedIn, Quill, and Draft.js
- Kept as commented fallback (deprecated API)
- Users can uncomment if synthetic events don't work
Co-authored-by: gaomeng1900 <gaomeng1900@users.noreply.github.com >
2026-03-10 20:39:20 +08:00
Simon
7f9f0d1589
feat: simplify ContentEditable handling
2026-03-10 19:40:49 +08:00
Simon
ddcfa5b499
Merge branch 'main' into fix/contenteditable-input-events
2026-03-10 17:37:20 +08:00
JasonOA888
441b41c713
fix(page-controller): address all Copilot review feedback
...
## Changes
1. **Fix early return bypassing cleanup**
- Remove early return when beforeinput is canceled
- Use shouldInsert flag to skip mutation but continue cleanup
- Ensures waitFor and blurLastClickedElement always run
2. **Fix duplicate input events**
- Contenteditable path now dispatches its own input events with inputType
- Skip shared input dispatch for contenteditable
- Prevents double-triggering framework listeners
3. **Fix event order (mutation before events)**
- Clear content now dispatches beforeinput(inputType:deleteContent) first
- Then performs the clear mutation
- Then dispatches input event for the deletion
- Proper event-mutation ordering
4. **Single-character keyboard events remain**
- PR description clarified this is intentional
- Multi-character input uses bulk insertion (not per-character typing)
- Maintains semantic consistency
5. **Fix duplicate focusout event**
- blur() already triggers native focusout
- Removed manual focusout dispatch
- Prevents double validation handlers
All changes follow Copilot's suggested fixes.
2026-03-10 16:03:25 +08:00
Simon
ed71dd08b9
Merge pull request #181 from fancyboi999/fancy/fix-180-viewport-expansion
...
fix(page-controller): honor viewportExpansion in DOM extraction
2026-03-10 15:50:34 +08:00
fancy
1c354ab5d3
refactor(page-controller): remove viewportExpansion constants module
2026-03-10 15:34:24 +08:00
Simon
151760713a
Merge pull request #177 from alibaba/dependabot/npm_and_yarn/development-dependencies-05afa3b718
...
chore(deps-dev): bump the development-dependencies group with 10 updates
2026-03-10 15:34:14 +08:00
Simon
4450d6302b
docs: update guidelines, CLA should be optional
2026-03-10 15:23:19 +08:00
JasonOA888
2d055d3909
style: fix Prettier formatting
2026-03-10 15:10:17 +08:00
fancy
16da7d936d
fix(page-controller): honor viewportExpansion in DOM extraction
2026-03-10 12:28:54 +08:00
JasonOA888
efe08f445f
fix(page-controller): address Copilot review feedback
...
## Changes
1. **Check beforeinput cancellation**
- dispatchEvent returns false if canceled
- Check defaultPrevented as well
- Abort mutation if event was canceled by any listener
2. **Fix event order to match real user typing**
- Before: beforeinput -> mutation -> input -> keydown -> keyup
- After: keydown -> beforeinput -> mutation -> input -> keyup
- This matches typical browser event sequence
3. **Fix blur event semantics**
- blur doesn't bubble; focusout does
- Call editableElement.blur() to actually change focus
- Dispatch focusout with bubbles:true for listeners
- Then refocus
4. **Keep single-character keyboard events**
- Already fixed in previous commit
- Maintained here with correct order
All changes follow Copilot's suggested fixes.
2026-03-10 12:02:01 +08:00
JasonOA888
4e7f755ae9
fix(page-controller): address PR review feedback
...
## Changes
1. **Fix keyboard event semantics** (per review feedback)
- Only dispatch keydown/keyup for single-character input
- Avoids inconsistent event payloads for multi-character strings
- Prevents confusion in editors that correlate key events with text changes
2. **Remove extra blank line**
- Formatting consistency
Reviewer noted that dispatching key events with only the last character
of multi-character text creates semantic inconsistency with the actual
DOM mutation (which inserts the full string at once).
This fix follows the suggested change from the review.
2026-03-10 12:00:47 +08:00
JasonOA888
28bb2204e7
fix(page-controller): improve contenteditable input with proper events
...
## Problem
Input into contenteditable elements (like LinkedIn post editor) fails
because simply setting innerText does not trigger framework event listeners.
## Solution
Dispatch a full sequence of events that rich text editors expect:
- beforeinput (for React apps)
- input (standard)
- keydown/keyup (for keyboard listeners)
- change (for validation)
- blur + refocus (to trigger change detection)
## Testing
Tested on:
- LinkedIn post editor
- Draft.js editors
- Contenteditable divs with React listeners
Fixes #168
2026-03-10 10:32:07 +08:00
dependabot[bot]
0c3b4592b2
chore(deps-dev): bump the development-dependencies group with 10 updates
...
Bumps the development-dependencies group with 10 updates:
| Package | From | To |
| --- | --- | --- |
| [@commitlint/cli](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli ) | `20.4.2` | `20.4.3` |
| [@commitlint/config-conventional](https://github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional ) | `20.4.2` | `20.4.3` |
| [@microsoft/api-extractor](https://github.com/microsoft/rushstack/tree/HEAD/apps/api-extractor ) | `7.57.6` | `7.57.7` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node ) | `25.3.3` | `25.4.0` |
| [lint-staged](https://github.com/lint-staged/lint-staged ) | `16.3.1` | `16.3.2` |
| [typescript-eslint](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint ) | `8.56.1` | `8.57.0` |
| [@wxt-dev/module-react](https://github.com/wxt-dev/wxt/tree/HEAD/packages/module-react ) | `1.1.5` | `1.2.1` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react ) | `0.576.0` | `0.577.0` |
| [motion](https://github.com/motiondivision/motion ) | `12.34.5` | `12.35.2` |
| [simple-icons](https://github.com/simple-icons/simple-icons ) | `16.10.0` | `16.11.0` |
Updates `@commitlint/cli` from 20.4.2 to 20.4.3
- [Release notes](https://github.com/conventional-changelog/commitlint/releases )
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/cli/CHANGELOG.md )
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v20.4.3/@commitlint/cli )
Updates `@commitlint/config-conventional` from 20.4.2 to 20.4.3
- [Release notes](https://github.com/conventional-changelog/commitlint/releases )
- [Changelog](https://github.com/conventional-changelog/commitlint/blob/master/@commitlint/config-conventional/CHANGELOG.md )
- [Commits](https://github.com/conventional-changelog/commitlint/commits/v20.4.3/@commitlint/config-conventional )
Updates `@microsoft/api-extractor` from 7.57.6 to 7.57.7
- [Changelog](https://github.com/microsoft/rushstack/blob/main/apps/api-extractor/CHANGELOG.md )
- [Commits](https://github.com/microsoft/rushstack/commits/@microsoft/api-extractor_v7.57.7/apps/api-extractor )
Updates `@types/node` from 25.3.3 to 25.4.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases )
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node )
Updates `lint-staged` from 16.3.1 to 16.3.2
- [Release notes](https://github.com/lint-staged/lint-staged/releases )
- [Changelog](https://github.com/lint-staged/lint-staged/blob/main/CHANGELOG.md )
- [Commits](https://github.com/lint-staged/lint-staged/compare/v16.3.1...v16.3.2 )
Updates `typescript-eslint` from 8.56.1 to 8.57.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases )
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/typescript-eslint/CHANGELOG.md )
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/typescript-eslint )
Updates `@wxt-dev/module-react` from 1.1.5 to 1.2.1
- [Release notes](https://github.com/wxt-dev/wxt/releases )
- [Changelog](https://github.com/wxt-dev/wxt/blob/main/packages/module-react/CHANGELOG.md )
- [Commits](https://github.com/wxt-dev/wxt/commits/storage-v1.2.1/packages/module-react )
Updates `lucide-react` from 0.576.0 to 0.577.0
- [Release notes](https://github.com/lucide-icons/lucide/releases )
- [Commits](https://github.com/lucide-icons/lucide/commits/0.577.0/packages/lucide-react )
Updates `motion` from 12.34.5 to 12.35.2
- [Changelog](https://github.com/motiondivision/motion/blob/main/CHANGELOG.md )
- [Commits](https://github.com/motiondivision/motion/compare/v12.34.5...v12.35.2 )
Updates `simple-icons` from 16.10.0 to 16.11.0
- [Release notes](https://github.com/simple-icons/simple-icons/releases )
- [Commits](https://github.com/simple-icons/simple-icons/compare/16.10.0...16.11.0 )
---
updated-dependencies:
- dependency-name: "@commitlint/cli"
dependency-version: 20.4.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@commitlint/config-conventional"
dependency-version: 20.4.3
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@microsoft/api-extractor"
dependency-version: 7.57.7
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: "@types/node"
dependency-version: 25.4.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: lint-staged
dependency-version: 16.3.2
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: development-dependencies
- dependency-name: typescript-eslint
dependency-version: 8.57.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: "@wxt-dev/module-react"
dependency-version: 1.2.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: lucide-react
dependency-version: 0.577.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: motion
dependency-version: 12.35.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
- dependency-name: simple-icons
dependency-version: 16.11.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: development-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-03-09 20:33:42 +00:00
Simon
222bbef670
chore: update readme
2026-03-09 23:41:12 +08:00
Simon
fa8ab451eb
chore: update readme
2026-03-09 23:39:41 +08:00
Simon
b4ebb2b98f
chore(version): bump version to 1.5.4
2026-03-09 23:35:04 +08:00
Simon
c757270101
Merge pull request #173 from alibaba/feat/tolerant-html-cleaning
...
feat: support wildcard in `includeAttributes`
2026-03-09 22:48:34 +08:00
Simon
5873e68d63
Merge pull request #175 from alibaba/copilot/sub-pr-173-again
...
perf(page-controller): cache compiled regexes in `globToRegex`
2026-03-09 22:34:58 +08:00
Simon
0c124c3b44
Merge pull request #176 from alibaba/copilot/sub-pr-173-another-one
...
refactor: use Object.keys() instead of for...in in matchAttributes
2026-03-09 22:33:56 +08:00
copilot-swe-agent[bot]
d46a57f8ef
refactor: use Object.keys() instead of for...in in matchAttributes
...
Co-authored-by: gaomeng1900 <10131203+gaomeng1900@users.noreply.github.com >
2026-03-09 14:32:20 +00:00
Simon
153fa23a71
docs: update model list; give example for cookie auth
2026-03-09 22:31:35 +08:00
copilot-swe-agent[bot]
5852054e3a
perf: cache compiled regexes in globToRegex to avoid repeated compilation
...
Co-authored-by: gaomeng1900 <10131203+gaomeng1900@users.noreply.github.com >
2026-03-09 14:29:56 +00:00
copilot-swe-agent[bot]
5988d4ba24
Initial plan
2026-03-09 14:29:10 +00:00
copilot-swe-agent[bot]
0b6a698f6b
Initial plan
2026-03-09 14:26:53 +00:00
Simon
01db520881
feat: support wildcard in includeAttributes
2026-03-09 22:02:35 +08:00
Simon
30b9956c4f
Merge pull request #172 from alibaba/fix/contenteditable
...
fix: contenteditable
2026-03-09 19:19:23 +08:00
Simon
4b37a3e538
feat(controller): add contenteditable to DEFAULT_INCLUDE_ATTRIBUTES
2026-03-09 19:15:51 +08:00
Simon
928d8d2fb3
fix: allow ContentEditable in inputTextElement; clean up code
2026-03-09 19:05:32 +08:00
Simon
8ece20f54b
chore(ext): build script
2026-03-09 17:29:45 +08:00
Simon
26b4afca6a
chore(ext): bump version to 0.1.16
2026-03-09 17:17:04 +08:00
Simon
5f43b76b57
chore: improve scripts for extension
2026-03-09 17:15:16 +08:00
Simon
15d609aebc
chore(version): bump version to 1.5.3
2026-03-09 17:02:34 +08:00
Simon
d66bf8f3cf
docs: improve Contributing.md
2026-03-09 17:00:25 +08:00
Simon
d3b42036af
Merge pull request #169 from tsubasakong/lucas/opener-b-page-agent-167
...
fix(llms): avoid reasoning_effort for GPT-5.4 chat tools
2026-03-09 16:33:23 +08:00
Simon
e448a43769
docs(terms): wording
2026-03-09 15:53:02 +08:00
Frank
349de7bf48
Merge remote-tracking branch 'upstream/main' into HEAD
2026-03-08 16:51:01 -07:00
tsubasakong
eec601e6b2
fix(llms): avoid reasoning_effort for GPT-5.4 chat tools
2026-03-08 16:37:32 -07:00
Simon
5b280a4a67
docs: update README graph
2026-03-09 03:44:36 +08:00
Simon
46deaf373f
docs(readme): add HN discussion link and star history
2026-03-08 00:18:48 +08:00
Simon
e098d5701f
docs(terms): wording
2026-03-07 23:57:09 +08:00
Simon
21d4be0020
docs(terms): wording
2026-03-07 23:51:14 +08:00
Simon
3f6a1856ac
chore(ext): bump version; fix zip naming
2026-03-07 23:29:12 +08:00