aidevops 2.52.1 → 2.53.1
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/README.md +1 -1
- package/VERSION +1 -1
- package/aidevops.sh +15 -9
- package/package.json +4 -4
- package/scripts/npm-postinstall.js +6 -7
- package/setup.sh +1 -1
- package/templates/deploy-templates.sh +144 -0
- package/templates/home/.agent/README.md +33 -0
- package/templates/home/AGENTS.md +96 -0
- package/templates/home/git/.agent/README.md +48 -0
- package/templates/home/git/AGENTS.md +97 -0
- package/templates/standard-functions.sh +179 -0
- package/templates/wordpress-performance-workflow.md +217 -0
- package/.agent/AGENTS.md +0 -614
- package/.agent/accounts.md +0 -65
- package/.agent/aidevops/add-new-mcp-to-aidevops.md +0 -456
- package/.agent/aidevops/api-integrations.md +0 -335
- package/.agent/aidevops/architecture.md +0 -510
- package/.agent/aidevops/configs.md +0 -274
- package/.agent/aidevops/docs.md +0 -244
- package/.agent/aidevops/extension.md +0 -311
- package/.agent/aidevops/mcp-integrations.md +0 -340
- package/.agent/aidevops/mcp-troubleshooting.md +0 -162
- package/.agent/aidevops/memory-patterns.md +0 -172
- package/.agent/aidevops/providers.md +0 -217
- package/.agent/aidevops/recommendations.md +0 -321
- package/.agent/aidevops/requirements.md +0 -301
- package/.agent/aidevops/resources.md +0 -214
- package/.agent/aidevops/security-requirements.md +0 -174
- package/.agent/aidevops/security.md +0 -350
- package/.agent/aidevops/service-links.md +0 -400
- package/.agent/aidevops/services.md +0 -357
- package/.agent/aidevops/setup.md +0 -153
- package/.agent/aidevops/troubleshooting.md +0 -389
- package/.agent/aidevops.md +0 -124
- package/.agent/build-plus.md +0 -244
- package/.agent/content/guidelines.md +0 -109
- package/.agent/content.md +0 -87
- package/.agent/health.md +0 -59
- package/.agent/legal.md +0 -59
- package/.agent/loop-state/full-loop.local.md +0 -16
- package/.agent/loop-state/ralph-loop.local.md +0 -10
- package/.agent/marketing.md +0 -440
- package/.agent/memory/README.md +0 -260
- package/.agent/onboarding.md +0 -796
- package/.agent/plan-plus.md +0 -245
- package/.agent/research.md +0 -100
- package/.agent/sales.md +0 -333
- package/.agent/scripts/101domains-helper.sh +0 -701
- package/.agent/scripts/add-missing-returns.sh +0 -140
- package/.agent/scripts/agent-browser-helper.sh +0 -311
- package/.agent/scripts/agno-setup.sh +0 -712
- package/.agent/scripts/ahrefs-mcp-wrapper.js +0 -168
- package/.agent/scripts/aidevops-update-check.sh +0 -71
- package/.agent/scripts/ampcode-cli.sh +0 -522
- package/.agent/scripts/auto-version-bump.sh +0 -156
- package/.agent/scripts/autogen-helper.sh +0 -512
- package/.agent/scripts/beads-sync-helper.sh +0 -596
- package/.agent/scripts/closte-helper.sh +0 -5
- package/.agent/scripts/cloudron-helper.sh +0 -321
- package/.agent/scripts/codacy-cli-chunked.sh +0 -581
- package/.agent/scripts/codacy-cli.sh +0 -442
- package/.agent/scripts/code-audit-helper.sh +0 -5
- package/.agent/scripts/coderabbit-cli.sh +0 -417
- package/.agent/scripts/coderabbit-pro-analysis.sh +0 -238
- package/.agent/scripts/commands/code-simplifier.md +0 -86
- package/.agent/scripts/commands/full-loop.md +0 -246
- package/.agent/scripts/commands/postflight-loop.md +0 -103
- package/.agent/scripts/commands/recall.md +0 -182
- package/.agent/scripts/commands/remember.md +0 -132
- package/.agent/scripts/commands/save-todo.md +0 -175
- package/.agent/scripts/commands/session-review.md +0 -154
- package/.agent/scripts/comprehensive-quality-fix.sh +0 -106
- package/.agent/scripts/context-builder-helper.sh +0 -522
- package/.agent/scripts/coolify-cli-helper.sh +0 -674
- package/.agent/scripts/coolify-helper.sh +0 -380
- package/.agent/scripts/crawl4ai-examples.sh +0 -401
- package/.agent/scripts/crawl4ai-helper.sh +0 -1078
- package/.agent/scripts/crewai-helper.sh +0 -681
- package/.agent/scripts/dev-browser-helper.sh +0 -513
- package/.agent/scripts/dns-helper.sh +0 -396
- package/.agent/scripts/domain-research-helper.sh +0 -917
- package/.agent/scripts/dspy-helper.sh +0 -285
- package/.agent/scripts/dspyground-helper.sh +0 -291
- package/.agent/scripts/eeat-score-helper.sh +0 -1242
- package/.agent/scripts/efficient-return-fix.sh +0 -92
- package/.agent/scripts/extract-opencode-prompts.sh +0 -128
- package/.agent/scripts/find-missing-returns.sh +0 -113
- package/.agent/scripts/fix-auth-headers.sh +0 -104
- package/.agent/scripts/fix-common-strings.sh +0 -254
- package/.agent/scripts/fix-content-type.sh +0 -100
- package/.agent/scripts/fix-error-messages.sh +0 -130
- package/.agent/scripts/fix-misplaced-returns.sh +0 -74
- package/.agent/scripts/fix-remaining-literals.sh +0 -152
- package/.agent/scripts/fix-return-statements.sh +0 -41
- package/.agent/scripts/fix-s131-default-cases.sh +0 -249
- package/.agent/scripts/fix-sc2155-simple.sh +0 -102
- package/.agent/scripts/fix-shellcheck-critical.sh +0 -187
- package/.agent/scripts/fix-string-literals.sh +0 -273
- package/.agent/scripts/full-loop-helper.sh +0 -773
- package/.agent/scripts/generate-opencode-agents.sh +0 -497
- package/.agent/scripts/generate-opencode-commands.sh +0 -1629
- package/.agent/scripts/generate-skills.sh +0 -366
- package/.agent/scripts/git-platforms-helper.sh +0 -640
- package/.agent/scripts/gitea-cli-helper.sh +0 -743
- package/.agent/scripts/github-cli-helper.sh +0 -702
- package/.agent/scripts/gitlab-cli-helper.sh +0 -682
- package/.agent/scripts/gsc-add-user-helper.sh +0 -325
- package/.agent/scripts/gsc-sitemap-helper.sh +0 -678
- package/.agent/scripts/hetzner-helper.sh +0 -485
- package/.agent/scripts/hostinger-helper.sh +0 -229
- package/.agent/scripts/keyword-research-helper.sh +0 -1815
- package/.agent/scripts/langflow-helper.sh +0 -544
- package/.agent/scripts/linkedin-automation.py +0 -241
- package/.agent/scripts/linter-manager.sh +0 -599
- package/.agent/scripts/linters-local.sh +0 -434
- package/.agent/scripts/list-keys-helper.sh +0 -488
- package/.agent/scripts/local-browser-automation.py +0 -339
- package/.agent/scripts/localhost-helper.sh +0 -744
- package/.agent/scripts/loop-common.sh +0 -806
- package/.agent/scripts/mainwp-helper.sh +0 -728
- package/.agent/scripts/markdown-formatter.sh +0 -338
- package/.agent/scripts/markdown-lint-fix.sh +0 -311
- package/.agent/scripts/mass-fix-returns.sh +0 -58
- package/.agent/scripts/mcp-diagnose.sh +0 -167
- package/.agent/scripts/mcp-inspector-helper.sh +0 -449
- package/.agent/scripts/memory-helper.sh +0 -650
- package/.agent/scripts/monitor-code-review.sh +0 -255
- package/.agent/scripts/onboarding-helper.sh +0 -706
- package/.agent/scripts/opencode-github-setup-helper.sh +0 -797
- package/.agent/scripts/opencode-test-helper.sh +0 -213
- package/.agent/scripts/pagespeed-helper.sh +0 -464
- package/.agent/scripts/pandoc-helper.sh +0 -362
- package/.agent/scripts/postflight-check.sh +0 -555
- package/.agent/scripts/pre-commit-hook.sh +0 -259
- package/.agent/scripts/pre-edit-check.sh +0 -169
- package/.agent/scripts/qlty-cli.sh +0 -356
- package/.agent/scripts/quality-cli-manager.sh +0 -525
- package/.agent/scripts/quality-feedback-helper.sh +0 -462
- package/.agent/scripts/quality-fix.sh +0 -263
- package/.agent/scripts/quality-loop-helper.sh +0 -1108
- package/.agent/scripts/ralph-loop-helper.sh +0 -836
- package/.agent/scripts/ralph-upstream-check.sh +0 -341
- package/.agent/scripts/secretlint-helper.sh +0 -847
- package/.agent/scripts/servers-helper.sh +0 -241
- package/.agent/scripts/ses-helper.sh +0 -619
- package/.agent/scripts/session-review-helper.sh +0 -404
- package/.agent/scripts/setup-linters-wizard.sh +0 -379
- package/.agent/scripts/setup-local-api-keys.sh +0 -330
- package/.agent/scripts/setup-mcp-integrations.sh +0 -472
- package/.agent/scripts/shared-constants.sh +0 -246
- package/.agent/scripts/site-crawler-helper.sh +0 -1487
- package/.agent/scripts/snyk-helper.sh +0 -940
- package/.agent/scripts/sonarcloud-autofix.sh +0 -193
- package/.agent/scripts/sonarcloud-cli.sh +0 -191
- package/.agent/scripts/sonarscanner-cli.sh +0 -455
- package/.agent/scripts/spaceship-helper.sh +0 -747
- package/.agent/scripts/stagehand-helper.sh +0 -321
- package/.agent/scripts/stagehand-python-helper.sh +0 -321
- package/.agent/scripts/stagehand-python-setup.sh +0 -441
- package/.agent/scripts/stagehand-setup.sh +0 -439
- package/.agent/scripts/system-cleanup.sh +0 -340
- package/.agent/scripts/terminal-title-helper.sh +0 -388
- package/.agent/scripts/terminal-title-setup.sh +0 -549
- package/.agent/scripts/test-stagehand-both-integration.sh +0 -317
- package/.agent/scripts/test-stagehand-integration.sh +0 -309
- package/.agent/scripts/test-stagehand-python-integration.sh +0 -341
- package/.agent/scripts/todo-ready.sh +0 -263
- package/.agent/scripts/tool-version-check.sh +0 -362
- package/.agent/scripts/toon-helper.sh +0 -469
- package/.agent/scripts/twilio-helper.sh +0 -917
- package/.agent/scripts/updown-helper.sh +0 -279
- package/.agent/scripts/validate-mcp-integrations.sh +0 -250
- package/.agent/scripts/validate-version-consistency.sh +0 -131
- package/.agent/scripts/vaultwarden-helper.sh +0 -597
- package/.agent/scripts/vercel-cli-helper.sh +0 -816
- package/.agent/scripts/verify-mirrors.sh +0 -169
- package/.agent/scripts/version-manager.sh +0 -831
- package/.agent/scripts/webhosting-helper.sh +0 -471
- package/.agent/scripts/webhosting-verify.sh +0 -238
- package/.agent/scripts/wordpress-mcp-helper.sh +0 -508
- package/.agent/scripts/worktree-helper.sh +0 -595
- package/.agent/scripts/worktree-sessions.sh +0 -577
- package/.agent/seo/dataforseo.md +0 -215
- package/.agent/seo/domain-research.md +0 -532
- package/.agent/seo/eeat-score.md +0 -659
- package/.agent/seo/google-search-console.md +0 -366
- package/.agent/seo/gsc-sitemaps.md +0 -282
- package/.agent/seo/keyword-research.md +0 -521
- package/.agent/seo/serper.md +0 -278
- package/.agent/seo/site-crawler.md +0 -387
- package/.agent/seo.md +0 -236
- package/.agent/services/accounting/quickfile.md +0 -159
- package/.agent/services/communications/telfon.md +0 -470
- package/.agent/services/communications/twilio.md +0 -569
- package/.agent/services/crm/fluentcrm.md +0 -449
- package/.agent/services/email/ses.md +0 -399
- package/.agent/services/hosting/101domains.md +0 -378
- package/.agent/services/hosting/closte.md +0 -177
- package/.agent/services/hosting/cloudflare.md +0 -251
- package/.agent/services/hosting/cloudron.md +0 -478
- package/.agent/services/hosting/dns-providers.md +0 -335
- package/.agent/services/hosting/domain-purchasing.md +0 -344
- package/.agent/services/hosting/hetzner.md +0 -327
- package/.agent/services/hosting/hostinger.md +0 -287
- package/.agent/services/hosting/localhost.md +0 -419
- package/.agent/services/hosting/spaceship.md +0 -353
- package/.agent/services/hosting/webhosting.md +0 -330
- package/.agent/social-media.md +0 -69
- package/.agent/templates/plans-template.md +0 -114
- package/.agent/templates/prd-template.md +0 -129
- package/.agent/templates/tasks-template.md +0 -108
- package/.agent/templates/todo-template.md +0 -89
- package/.agent/tools/ai-assistants/agno.md +0 -471
- package/.agent/tools/ai-assistants/capsolver.md +0 -326
- package/.agent/tools/ai-assistants/configuration.md +0 -221
- package/.agent/tools/ai-assistants/overview.md +0 -209
- package/.agent/tools/ai-assistants/status.md +0 -171
- package/.agent/tools/ai-assistants/windsurf.md +0 -193
- package/.agent/tools/ai-orchestration/autogen.md +0 -406
- package/.agent/tools/ai-orchestration/crewai.md +0 -445
- package/.agent/tools/ai-orchestration/langflow.md +0 -405
- package/.agent/tools/ai-orchestration/openprose.md +0 -487
- package/.agent/tools/ai-orchestration/overview.md +0 -362
- package/.agent/tools/ai-orchestration/packaging.md +0 -647
- package/.agent/tools/browser/agent-browser.md +0 -464
- package/.agent/tools/browser/browser-automation.md +0 -400
- package/.agent/tools/browser/chrome-devtools.md +0 -282
- package/.agent/tools/browser/crawl4ai-integration.md +0 -422
- package/.agent/tools/browser/crawl4ai-resources.md +0 -277
- package/.agent/tools/browser/crawl4ai-usage.md +0 -416
- package/.agent/tools/browser/crawl4ai.md +0 -585
- package/.agent/tools/browser/dev-browser.md +0 -341
- package/.agent/tools/browser/pagespeed.md +0 -260
- package/.agent/tools/browser/playwright.md +0 -266
- package/.agent/tools/browser/playwriter.md +0 -310
- package/.agent/tools/browser/stagehand-examples.md +0 -456
- package/.agent/tools/browser/stagehand-python.md +0 -483
- package/.agent/tools/browser/stagehand.md +0 -421
- package/.agent/tools/build-agent/agent-review.md +0 -224
- package/.agent/tools/build-agent/build-agent.md +0 -784
- package/.agent/tools/build-mcp/aidevops-plugin.md +0 -476
- package/.agent/tools/build-mcp/api-wrapper.md +0 -445
- package/.agent/tools/build-mcp/build-mcp.md +0 -240
- package/.agent/tools/build-mcp/deployment.md +0 -401
- package/.agent/tools/build-mcp/server-patterns.md +0 -632
- package/.agent/tools/build-mcp/transports.md +0 -366
- package/.agent/tools/code-review/auditing.md +0 -383
- package/.agent/tools/code-review/automation.md +0 -219
- package/.agent/tools/code-review/best-practices.md +0 -203
- package/.agent/tools/code-review/codacy.md +0 -151
- package/.agent/tools/code-review/code-simplifier.md +0 -174
- package/.agent/tools/code-review/code-standards.md +0 -309
- package/.agent/tools/code-review/coderabbit.md +0 -101
- package/.agent/tools/code-review/management.md +0 -155
- package/.agent/tools/code-review/qlty.md +0 -248
- package/.agent/tools/code-review/secretlint.md +0 -565
- package/.agent/tools/code-review/setup.md +0 -250
- package/.agent/tools/code-review/snyk.md +0 -563
- package/.agent/tools/code-review/tools.md +0 -230
- package/.agent/tools/content/summarize.md +0 -353
- package/.agent/tools/context/augment-context-engine.md +0 -468
- package/.agent/tools/context/context-builder-agent.md +0 -76
- package/.agent/tools/context/context-builder.md +0 -375
- package/.agent/tools/context/context7.md +0 -371
- package/.agent/tools/context/dspy.md +0 -302
- package/.agent/tools/context/dspyground.md +0 -374
- package/.agent/tools/context/llm-tldr.md +0 -219
- package/.agent/tools/context/osgrep.md +0 -488
- package/.agent/tools/context/prompt-optimization.md +0 -338
- package/.agent/tools/context/toon.md +0 -292
- package/.agent/tools/conversion/pandoc.md +0 -304
- package/.agent/tools/credentials/api-key-management.md +0 -154
- package/.agent/tools/credentials/api-key-setup.md +0 -224
- package/.agent/tools/credentials/environment-variables.md +0 -180
- package/.agent/tools/credentials/vaultwarden.md +0 -382
- package/.agent/tools/data-extraction/outscraper.md +0 -974
- package/.agent/tools/deployment/coolify-cli.md +0 -388
- package/.agent/tools/deployment/coolify-setup.md +0 -353
- package/.agent/tools/deployment/coolify.md +0 -345
- package/.agent/tools/deployment/vercel.md +0 -390
- package/.agent/tools/git/authentication.md +0 -132
- package/.agent/tools/git/gitea-cli.md +0 -193
- package/.agent/tools/git/github-actions.md +0 -207
- package/.agent/tools/git/github-cli.md +0 -223
- package/.agent/tools/git/gitlab-cli.md +0 -190
- package/.agent/tools/git/opencode-github-security.md +0 -350
- package/.agent/tools/git/opencode-github.md +0 -328
- package/.agent/tools/git/opencode-gitlab.md +0 -252
- package/.agent/tools/git/security.md +0 -196
- package/.agent/tools/git.md +0 -207
- package/.agent/tools/opencode/oh-my-opencode.md +0 -375
- package/.agent/tools/opencode/opencode-anthropic-auth.md +0 -446
- package/.agent/tools/opencode/opencode.md +0 -651
- package/.agent/tools/social-media/bird.md +0 -437
- package/.agent/tools/task-management/beads.md +0 -336
- package/.agent/tools/terminal/terminal-title.md +0 -251
- package/.agent/tools/ui/shadcn.md +0 -196
- package/.agent/tools/ui/ui-skills.md +0 -115
- package/.agent/tools/wordpress/localwp.md +0 -311
- package/.agent/tools/wordpress/mainwp.md +0 -391
- package/.agent/tools/wordpress/scf.md +0 -527
- package/.agent/tools/wordpress/wp-admin.md +0 -729
- package/.agent/tools/wordpress/wp-dev.md +0 -940
- package/.agent/tools/wordpress/wp-preferred.md +0 -398
- package/.agent/tools/wordpress.md +0 -95
- package/.agent/workflows/branch/bugfix.md +0 -63
- package/.agent/workflows/branch/chore.md +0 -95
- package/.agent/workflows/branch/experiment.md +0 -115
- package/.agent/workflows/branch/feature.md +0 -59
- package/.agent/workflows/branch/hotfix.md +0 -98
- package/.agent/workflows/branch/refactor.md +0 -92
- package/.agent/workflows/branch/release.md +0 -96
- package/.agent/workflows/branch.md +0 -347
- package/.agent/workflows/bug-fixing.md +0 -267
- package/.agent/workflows/changelog.md +0 -129
- package/.agent/workflows/code-audit-remote.md +0 -279
- package/.agent/workflows/conversation-starter.md +0 -69
- package/.agent/workflows/error-feedback.md +0 -578
- package/.agent/workflows/feature-development.md +0 -355
- package/.agent/workflows/git-workflow.md +0 -702
- package/.agent/workflows/multi-repo-workspace.md +0 -268
- package/.agent/workflows/plans.md +0 -709
- package/.agent/workflows/postflight.md +0 -604
- package/.agent/workflows/pr.md +0 -571
- package/.agent/workflows/preflight.md +0 -278
- package/.agent/workflows/ralph-loop.md +0 -773
- package/.agent/workflows/release.md +0 -498
- package/.agent/workflows/session-manager.md +0 -254
- package/.agent/workflows/session-review.md +0 -311
- package/.agent/workflows/sql-migrations.md +0 -631
- package/.agent/workflows/version-bump.md +0 -283
- package/.agent/workflows/wiki-update.md +0 -333
- package/.agent/workflows/worktree.md +0 -477
|
@@ -1,401 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
# shellcheck disable=SC2034,SC2155,SC2317,SC2329,SC2016,SC2181,SC1091,SC2154,SC2015,SC2086,SC2129,SC2030,SC2031,SC2119,SC2120,SC2001,SC2162,SC2088,SC2089,SC2090,SC2029,SC2006,SC2153
|
|
3
|
-
|
|
4
|
-
# Crawl4AI Examples Script
|
|
5
|
-
# Demonstrates various Crawl4AI usage patterns for AI assistants
|
|
6
|
-
#
|
|
7
|
-
# This script provides practical examples of using Crawl4AI for:
|
|
8
|
-
# - Basic web crawling and content extraction
|
|
9
|
-
# - Structured data extraction with CSS selectors
|
|
10
|
-
# - Batch processing multiple URLs
|
|
11
|
-
# - Content analysis workflows
|
|
12
|
-
#
|
|
13
|
-
# Usage: ./crawl4ai-examples.sh [example]
|
|
14
|
-
# Examples:
|
|
15
|
-
# basic-crawl - Basic web crawling example
|
|
16
|
-
# structured - Structured data extraction
|
|
17
|
-
# batch-process - Batch processing multiple URLs
|
|
18
|
-
# content-analysis - Complete content analysis workflow
|
|
19
|
-
# captcha-demo - CAPTCHA solving demonstration (requires CapSolver API key)
|
|
20
|
-
# all - Run all examples
|
|
21
|
-
#
|
|
22
|
-
# Author: AI DevOps Framework
|
|
23
|
-
# Version: 1.0.0
|
|
24
|
-
# License: MIT
|
|
25
|
-
|
|
26
|
-
# Colors for output
|
|
27
|
-
readonly GREEN='\033[0;32m'
|
|
28
|
-
readonly BLUE='\033[0;34m'
|
|
29
|
-
readonly YELLOW='\033[1;33m'
|
|
30
|
-
readonly RED='\033[0;31m'
|
|
31
|
-
readonly PURPLE='\033[0;35m'
|
|
32
|
-
readonly NC='\033[0m' # No Color
|
|
33
|
-
|
|
34
|
-
# Constants
|
|
35
|
-
readonly SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" || exit
|
|
36
|
-
readonly FRAMEWORK_ROOT="$SCRIPT_DIR/../.."
|
|
37
|
-
readonly CRAWL4AI_HELPER="$FRAMEWORK_ROOT/.agent/scripts/crawl4ai-helper.sh"
|
|
38
|
-
readonly OUTPUT_DIR="$HOME/.agent/tmp/crawl4ai-examples"
|
|
39
|
-
readonly TEST_URL_HTML="https://httpbin.org/html"
|
|
40
|
-
|
|
41
|
-
# Print functions
|
|
42
|
-
print_success() {
|
|
43
|
-
local message="$1"
|
|
44
|
-
echo -e "${GREEN}✅ $message${NC}"
|
|
45
|
-
return 0
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
print_info() {
|
|
49
|
-
local message="$1"
|
|
50
|
-
echo -e "${BLUE}ℹ️ $message${NC}"
|
|
51
|
-
return 0
|
|
52
|
-
}
|
|
53
|
-
|
|
54
|
-
print_warning() {
|
|
55
|
-
local message="$1"
|
|
56
|
-
echo -e "${YELLOW}⚠️ $message${NC}"
|
|
57
|
-
return 0
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
print_error() {
|
|
61
|
-
local message="$1"
|
|
62
|
-
echo -e "${RED}❌ $message${NC}"
|
|
63
|
-
return 0
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
print_header() {
|
|
67
|
-
local message="$1"
|
|
68
|
-
echo -e "${PURPLE}🚀 $message${NC}"
|
|
69
|
-
return 0
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
# Setup output directory
|
|
73
|
-
setup_output_dir() {
|
|
74
|
-
if [[ ! -d "$OUTPUT_DIR" ]]; then
|
|
75
|
-
mkdir -p "$OUTPUT_DIR"
|
|
76
|
-
print_success "Created output directory: $OUTPUT_DIR"
|
|
77
|
-
fi
|
|
78
|
-
return 0
|
|
79
|
-
}
|
|
80
|
-
|
|
81
|
-
# Check if Crawl4AI is available
|
|
82
|
-
check_crawl4ai() {
|
|
83
|
-
if [[ ! -f "$CRAWL4AI_HELPER" ]]; then
|
|
84
|
-
print_error "Crawl4AI helper script not found at $CRAWL4AI_HELPER"
|
|
85
|
-
return 1
|
|
86
|
-
fi
|
|
87
|
-
|
|
88
|
-
# Check if Docker container is running
|
|
89
|
-
if ! docker ps -q -f name="crawl4ai" | grep -q .; then
|
|
90
|
-
print_warning "Crawl4AI Docker container is not running"
|
|
91
|
-
print_info "Starting Docker container..."
|
|
92
|
-
if ! "$CRAWL4AI_HELPER" docker-start; then
|
|
93
|
-
print_error "Failed to start Crawl4AI Docker container"
|
|
94
|
-
return 1
|
|
95
|
-
fi
|
|
96
|
-
sleep 5 # Wait for container to be ready
|
|
97
|
-
fi
|
|
98
|
-
|
|
99
|
-
return 0
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
# Example 1: Basic web crawling
|
|
103
|
-
example_basic_crawl() {
|
|
104
|
-
print_header "Example 1: Basic Web Crawling"
|
|
105
|
-
|
|
106
|
-
local url="$TEST_URL_HTML"
|
|
107
|
-
local output_file="$OUTPUT_DIR/basic-crawl.json"
|
|
108
|
-
|
|
109
|
-
print_info "Crawling: $url"
|
|
110
|
-
if "$CRAWL4AI_HELPER" crawl "$url" markdown "$output_file"; then
|
|
111
|
-
print_success "Basic crawl completed"
|
|
112
|
-
print_info "Output saved to: $output_file"
|
|
113
|
-
|
|
114
|
-
# Show markdown content
|
|
115
|
-
if command -v jq &> /dev/null; then
|
|
116
|
-
local markdown_content
|
|
117
|
-
markdown_content=$(jq -r '.results[0].markdown' "$output_file" 2>/dev/null)
|
|
118
|
-
if [[ -n "$markdown_content" && "$markdown_content" != "null" ]]; then
|
|
119
|
-
print_info "Extracted markdown (first 200 chars):"
|
|
120
|
-
echo "${markdown_content:0:200}..."
|
|
121
|
-
fi
|
|
122
|
-
fi
|
|
123
|
-
else
|
|
124
|
-
print_error "Basic crawl failed"
|
|
125
|
-
return 1
|
|
126
|
-
fi
|
|
127
|
-
|
|
128
|
-
return 0
|
|
129
|
-
}
|
|
130
|
-
|
|
131
|
-
# Example 2: Structured data extraction
|
|
132
|
-
example_structured_extraction() {
|
|
133
|
-
print_header "Example 2: Structured Data Extraction"
|
|
134
|
-
|
|
135
|
-
local url="$TEST_URL_HTML"
|
|
136
|
-
local schema='{"title": "h1", "content": "p", "links": {"selector": "a", "type": "attribute", "attribute": "href"}}'
|
|
137
|
-
local output_file="$OUTPUT_DIR/structured-extraction.json"
|
|
138
|
-
|
|
139
|
-
print_info "Extracting structured data from: $url"
|
|
140
|
-
print_info "Schema: $schema"
|
|
141
|
-
|
|
142
|
-
if "$CRAWL4AI_HELPER" extract "$url" "$schema" "$output_file"; then
|
|
143
|
-
print_success "Structured extraction completed"
|
|
144
|
-
print_info "Output saved to: $output_file"
|
|
145
|
-
|
|
146
|
-
# Show extracted data
|
|
147
|
-
if command -v jq &> /dev/null; then
|
|
148
|
-
local extracted_content
|
|
149
|
-
extracted_content=$(jq -r '.results[0].extracted_content' "$output_file" 2>/dev/null)
|
|
150
|
-
if [[ -n "$extracted_content" && "$extracted_content" != "null" ]]; then
|
|
151
|
-
print_info "Extracted data:"
|
|
152
|
-
echo "$extracted_content" | jq '.' 2>/dev/null || echo "$extracted_content"
|
|
153
|
-
fi
|
|
154
|
-
fi
|
|
155
|
-
else
|
|
156
|
-
print_error "Structured extraction failed"
|
|
157
|
-
return 1
|
|
158
|
-
fi
|
|
159
|
-
|
|
160
|
-
return 0
|
|
161
|
-
}
|
|
162
|
-
|
|
163
|
-
# Example 3: Batch processing
|
|
164
|
-
example_batch_processing() {
|
|
165
|
-
print_header "Example 3: Batch Processing Multiple URLs"
|
|
166
|
-
|
|
167
|
-
local urls=(
|
|
168
|
-
"$TEST_URL_HTML"
|
|
169
|
-
"https://httpbin.org/json"
|
|
170
|
-
"https://httpbin.org/xml"
|
|
171
|
-
)
|
|
172
|
-
|
|
173
|
-
print_info "Processing ${#urls[@]} URLs..."
|
|
174
|
-
|
|
175
|
-
local i=1
|
|
176
|
-
for url in "${urls[@]}"; do
|
|
177
|
-
local output_file="$OUTPUT_DIR/batch-$i.json"
|
|
178
|
-
print_info "[$i/${#urls[@]}] Processing: $url"
|
|
179
|
-
|
|
180
|
-
if "$CRAWL4AI_HELPER" crawl "$url" markdown "$output_file"; then
|
|
181
|
-
print_success "Processed: $url"
|
|
182
|
-
else
|
|
183
|
-
print_warning "Failed to process: $url"
|
|
184
|
-
fi
|
|
185
|
-
|
|
186
|
-
((i++))
|
|
187
|
-
sleep 1 # Rate limiting
|
|
188
|
-
done
|
|
189
|
-
|
|
190
|
-
print_success "Batch processing completed"
|
|
191
|
-
return 0
|
|
192
|
-
}
|
|
193
|
-
|
|
194
|
-
# Example 4: Content analysis workflow
|
|
195
|
-
example_content_analysis() {
|
|
196
|
-
print_header "Example 4: Complete Content Analysis Workflow"
|
|
197
|
-
|
|
198
|
-
local url="$TEST_URL_HTML"
|
|
199
|
-
local timestamp
|
|
200
|
-
timestamp=$(date +%Y%m%d_%H%M%S)
|
|
201
|
-
|
|
202
|
-
# Step 1: Basic crawl
|
|
203
|
-
print_info "Step 1: Basic content crawl"
|
|
204
|
-
local raw_output="$OUTPUT_DIR/analysis-raw-$timestamp.json"
|
|
205
|
-
if ! "$CRAWL4AI_HELPER" crawl "$url" markdown "$raw_output"; then
|
|
206
|
-
print_error "Failed to crawl content"
|
|
207
|
-
return 1
|
|
208
|
-
fi
|
|
209
|
-
|
|
210
|
-
# Step 2: Structured extraction
|
|
211
|
-
print_info "Step 2: Structured data extraction"
|
|
212
|
-
local structured_schema='{"title": "h1", "headings": "h2, h3", "paragraphs": "p", "links": {"selector": "a", "type": "attribute", "attribute": "href"}}'
|
|
213
|
-
local structured_output="$OUTPUT_DIR/analysis-structured-$timestamp.json"
|
|
214
|
-
if ! "$CRAWL4AI_HELPER" extract "$url" "$structured_schema" "$structured_output"; then
|
|
215
|
-
print_error "Failed to extract structured data"
|
|
216
|
-
return 1
|
|
217
|
-
fi
|
|
218
|
-
|
|
219
|
-
# Step 3: Analysis summary
|
|
220
|
-
print_info "Step 3: Generating analysis summary"
|
|
221
|
-
local summary_file="$OUTPUT_DIR/analysis-summary-$timestamp.txt"
|
|
222
|
-
|
|
223
|
-
cat > "$summary_file" << EOF
|
|
224
|
-
Content Analysis Summary
|
|
225
|
-
========================
|
|
226
|
-
Timestamp: $(date)
|
|
227
|
-
URL: $url
|
|
228
|
-
|
|
229
|
-
Files Generated:
|
|
230
|
-
- Raw content: $raw_output
|
|
231
|
-
- Structured data: $structured_output
|
|
232
|
-
|
|
233
|
-
Analysis Complete!
|
|
234
|
-
EOF
|
|
235
|
-
|
|
236
|
-
print_success "Content analysis workflow completed"
|
|
237
|
-
print_info "Summary saved to: $summary_file"
|
|
238
|
-
|
|
239
|
-
return 0
|
|
240
|
-
}
|
|
241
|
-
|
|
242
|
-
# Example 5: CAPTCHA solving demonstration
|
|
243
|
-
example_captcha_demo() {
|
|
244
|
-
local _arg3="$3"
|
|
245
|
-
print_header "Example 5: CAPTCHA Solving Demonstration"
|
|
246
|
-
|
|
247
|
-
# Check if CapSolver API key is set
|
|
248
|
-
if [[ -z "$CAPSOLVER_API_KEY" ]]; then
|
|
249
|
-
print_warning "CAPSOLVER_API_KEY not set - this is a demonstration only"
|
|
250
|
-
print_info "To run actual CAPTCHA solving:"
|
|
251
|
-
print_info "1. Get API key: https://dashboard.capsolver.com/dashboard/overview"
|
|
252
|
-
print_info "2. Set: export CAPSOLVER_API_KEY='CAP-xxxxxxxxxxxxxxxxxxxxx'"
|
|
253
|
-
print_info "3. Run: $CRAWL4AI_HELPER captcha-crawl <url> <type> <site_key>"
|
|
254
|
-
print_info ""
|
|
255
|
-
print_info "📋 Supported CAPTCHA Types:"
|
|
256
|
-
print_info "• recaptcha_v2 - reCAPTCHA v2 checkbox ($0.5/1000)"
|
|
257
|
-
print_info "• recaptcha_v3 - reCAPTCHA v3 invisible ($0.5/1000)"
|
|
258
|
-
print_info "• turnstile - Cloudflare Turnstile ($_arg3/1000)"
|
|
259
|
-
print_info "• aws_waf - AWS WAF bypass (contact for pricing)"
|
|
260
|
-
print_info "• geetest - GeeTest v3/v4 ($0.5/1000)"
|
|
261
|
-
print_info ""
|
|
262
|
-
print_info "📚 Example Commands:"
|
|
263
|
-
print_info "$CRAWL4AI_HELPER captcha-crawl https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php recaptcha_v2 6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9"
|
|
264
|
-
print_info "$CRAWL4AI_HELPER captcha-crawl https://clifford.io/demo/cloudflare-turnstile turnstile 0x4AAAAAAAGlwMzq_9z6S9Mh"
|
|
265
|
-
return 0
|
|
266
|
-
fi
|
|
267
|
-
|
|
268
|
-
print_info "CapSolver API key detected - running live demonstration"
|
|
269
|
-
|
|
270
|
-
# Demo URLs and configurations
|
|
271
|
-
local demo_configs=(
|
|
272
|
-
"https://recaptcha-demo.appspot.com/recaptcha-v2-checkbox.php|recaptcha_v2|6LfW6wATAAAAAHLqO2pb8bDBahxlMxNdo9g947u9|reCAPTCHA v2 Demo"
|
|
273
|
-
"https://clifford.io/demo/cloudflare-turnstile|turnstile|0x4AAAAAAAGlwMzq_9z6S9Mh|Cloudflare Turnstile Demo"
|
|
274
|
-
)
|
|
275
|
-
|
|
276
|
-
local i=1
|
|
277
|
-
for config in "${demo_configs[@]}"; do
|
|
278
|
-
IFS='|' read -r url captcha_type site_key description <<< "$config"
|
|
279
|
-
|
|
280
|
-
print_info "[$i/${#demo_configs[@]}] Testing: $description"
|
|
281
|
-
print_info "URL: $url"
|
|
282
|
-
print_info "Type: $captcha_type"
|
|
283
|
-
|
|
284
|
-
local output_file="$OUTPUT_DIR/captcha-demo-$i.json"
|
|
285
|
-
|
|
286
|
-
if "$CRAWL4AI_HELPER" captcha-crawl "$url" "$captcha_type" "$site_key" "$output_file"; then
|
|
287
|
-
print_success "CAPTCHA demo $i completed successfully"
|
|
288
|
-
if [[ -f "$output_file" ]]; then
|
|
289
|
-
print_info "Results saved to: $output_file"
|
|
290
|
-
fi
|
|
291
|
-
else
|
|
292
|
-
print_warning "CAPTCHA demo $i failed - this may be due to site changes or API limits"
|
|
293
|
-
fi
|
|
294
|
-
|
|
295
|
-
((i++))
|
|
296
|
-
|
|
297
|
-
# Add delay between requests to respect rate limits
|
|
298
|
-
if [[ $i -le ${#demo_configs[@]} ]]; then
|
|
299
|
-
print_info "Waiting 10 seconds before next demo..."
|
|
300
|
-
sleep 10
|
|
301
|
-
fi
|
|
302
|
-
done
|
|
303
|
-
|
|
304
|
-
print_success "CAPTCHA solving demonstration completed"
|
|
305
|
-
print_info ""
|
|
306
|
-
print_info "💡 Tips for Production Use:"
|
|
307
|
-
print_info "• Monitor your CapSolver balance regularly"
|
|
308
|
-
print_info "• Use package deals for high-volume operations (up to 60% savings)"
|
|
309
|
-
print_info "• Implement proper error handling for failed CAPTCHA attempts"
|
|
310
|
-
print_info "• Respect website rate limits even with CAPTCHA solving"
|
|
311
|
-
|
|
312
|
-
return 0
|
|
313
|
-
}
|
|
314
|
-
|
|
315
|
-
# Show help
|
|
316
|
-
show_help() {
|
|
317
|
-
local script_name="$0"
|
|
318
|
-
echo "Crawl4AI Examples Script"
|
|
319
|
-
echo "Usage: $script_name [example]"
|
|
320
|
-
echo ""
|
|
321
|
-
echo "Examples:"
|
|
322
|
-
echo " basic-crawl - Basic web crawling example"
|
|
323
|
-
echo " structured - Structured data extraction"
|
|
324
|
-
echo " batch-process - Batch processing multiple URLs"
|
|
325
|
-
echo " content-analysis - Complete content analysis workflow"
|
|
326
|
-
echo " captcha-demo - CAPTCHA solving demonstration"
|
|
327
|
-
echo " all - Run all examples"
|
|
328
|
-
echo " help - Show this help message"
|
|
329
|
-
echo ""
|
|
330
|
-
echo "Output Directory: $OUTPUT_DIR"
|
|
331
|
-
echo ""
|
|
332
|
-
echo "Prerequisites:"
|
|
333
|
-
echo " - Crawl4AI Docker container running"
|
|
334
|
-
echo " - Internet connection for test URLs"
|
|
335
|
-
echo ""
|
|
336
|
-
echo "To start Crawl4AI:"
|
|
337
|
-
echo " $CRAWL4AI_HELPER docker-start"
|
|
338
|
-
return 0
|
|
339
|
-
}
|
|
340
|
-
|
|
341
|
-
# Main function
|
|
342
|
-
main() {
|
|
343
|
-
local example="${1:-help}"
|
|
344
|
-
|
|
345
|
-
# Setup
|
|
346
|
-
setup_output_dir
|
|
347
|
-
|
|
348
|
-
case "$example" in
|
|
349
|
-
"basic-crawl")
|
|
350
|
-
if check_crawl4ai; then
|
|
351
|
-
example_basic_crawl
|
|
352
|
-
fi
|
|
353
|
-
;;
|
|
354
|
-
"structured")
|
|
355
|
-
if check_crawl4ai; then
|
|
356
|
-
example_structured_extraction
|
|
357
|
-
fi
|
|
358
|
-
;;
|
|
359
|
-
"batch-process")
|
|
360
|
-
if check_crawl4ai; then
|
|
361
|
-
example_batch_processing
|
|
362
|
-
fi
|
|
363
|
-
;;
|
|
364
|
-
"content-analysis")
|
|
365
|
-
if check_crawl4ai; then
|
|
366
|
-
example_content_analysis
|
|
367
|
-
fi
|
|
368
|
-
;;
|
|
369
|
-
"captcha-demo")
|
|
370
|
-
if check_crawl4ai; then
|
|
371
|
-
example_captcha_demo
|
|
372
|
-
fi
|
|
373
|
-
;;
|
|
374
|
-
"all")
|
|
375
|
-
if check_crawl4ai; then
|
|
376
|
-
example_basic_crawl
|
|
377
|
-
echo ""
|
|
378
|
-
example_structured_extraction
|
|
379
|
-
echo ""
|
|
380
|
-
example_batch_processing
|
|
381
|
-
echo ""
|
|
382
|
-
example_content_analysis
|
|
383
|
-
echo ""
|
|
384
|
-
example_captcha_demo
|
|
385
|
-
fi
|
|
386
|
-
;;
|
|
387
|
-
"help"|"-h"|"--help"|"")
|
|
388
|
-
show_help
|
|
389
|
-
;;
|
|
390
|
-
*)
|
|
391
|
-
print_error "Unknown example: $example"
|
|
392
|
-
show_help
|
|
393
|
-
return 1
|
|
394
|
-
;;
|
|
395
|
-
esac
|
|
396
|
-
return 0
|
|
397
|
-
}
|
|
398
|
-
|
|
399
|
-
main "$@"
|
|
400
|
-
|
|
401
|
-
exit 0
|