AI-assisted development with Aider for Browser4 - a lightning-fast, coroutine-safe browser automation framework built with Kotlin and Maven
Expert guidance for AI-assisted development on Browser4, a high-performance browser automation framework. This skill provides comprehensive context for working with Browser4's multi-module Maven architecture, Kotlin codebase, and browser automation APIs.
Browser4 is a lightning-fast, coroutine-safe browser automation framework with:
When working on Browser4, always follow:
1. **最小改动 (Minimal changes)** - Make the smallest change necessary
2. **保持风格 (Maintain existing style)** - Follow established patterns
3. **清晰日志 (Clear logging)** - Use structured logging with placeholders
4. **自动校验与测试 (Automated validation)** - Ensure tests pass and coverage is maintained
**Unix/macOS:**
```bash
./mvnw -q -DskipTests
```
**Windows (cmd):**
```cmd
mvnw.cmd -q -DskipTests
```
**Unix/macOS:**
```bash
./mvnw -pl pulsar-core -am test -Dsurefire.failIfNoSpecifiedTests=false
```
**Windows (cmd):**
```cmd
mvnw.cmd -pl pulsar-core -am test -D"surefire.failIfNoSpecifiedTests=false"
```
**Note:** Windows requires quoting `-D` parameters with dots: `-D"key.with.dots=value"`
- `docs/config.md`
- `docs/rest-api-examples.md`
Follow the structured logging format defined in `docs/log-format.md`:
```kotlin
// ✅ GOOD - Use placeholders
logger.info("Task {} finished in {} ms", taskId, cost)
// ❌ BAD - Avoid string concatenation
logger.info("Task " + taskId + " finished in " + cost + " ms")
```
Example:
```kotlin
/**
* Loads a page with the specified options.
*
* @param url The target URL
* @param options Load options for browser behavior
* @return The loaded page
* @throws BrowserException if loading fails
*/
fun loadPage(url: String, options: LoadOptions): Page {
// implementation
}
```
Before considering any task complete:
1. ✅ Build and relevant tests pass with no new noisy logs/warnings
2. ✅ New/changed logic includes main path + at least 1 edge case test
3. ✅ No secrets/private endpoints committed; inputs are validated
4. ✅ No arbitrary version drift (follow parent BOM)
5. ✅ Public behavior/config changes are documented
6. ✅ Performance impact assessment (if >~5% potential impact)
```bash
chmod +x mvnw
```
Ensure you're using the JDK version required by the repository (check `pom.xml` or `.sdkmanrc`)
Always quote `-D` parameters with dots:
```cmd
mvnw.cmd test -D"key.with.dots=value"
```
Default port 8182 is occupied:
```properties
server.port=8183
```
Recommended Aider settings for this project:
```yaml
```
1. **Before making changes:** Read existing code to understand patterns and style
2. **Building:** Use the provided build scripts for your platform
3. **Testing:** Run relevant module tests before committing
4. **Logging:** Always use structured logging with placeholders
5. **Documentation:** Update docs when changing public APIs or configuration
6. **Performance:** Consider and document performance implications
Leave a review
No reviews yet. Be the first to review this skill!
# Download SKILL.md from killerskills.ai/api/skills/browser4-aider-configuration/raw