Skip to main content

Hermes-style CLI agent that finds outdated Uzbekistan websites and runs deep upgrade analysis (Grok/GPT/Claude/Gemini)

Project description

Old Website Finder Agent (owf)

Hermes-uslubidagi professional CLI agent — O‘zbekiston ichidagi eskirgan veb-saytlarni topadi, deep analysis qiladi, multi-provider LLM orqali tashxis qo‘yadi.

Install (public)

# PyPI (nom publish qilingandan keyin)
pip install old-website-finder

# yoki pipx (tavsiya — global CLI)
pipx install old-website-finder

# yoki to‘g‘ridan-to‘g‘ri GitHubdan
pip install git+https://github.com/FarrukhDevloper/owf/OldWebsiteFinder.git
owf --version

# INTERAKTIV AGENT (tavsiya) — terminalda qoladi, Hermes kabi
owf
owf> help
owf> login
owf> daily 3
owf> analyze https://stat.uz
owf> history
owf> exit

# Yoki bir martalik:
owf login claude
owf daily -n 3
owf analyze https://example.uz
owf -h                 # barcha buyruqlar

Batafsil: PUBLISH.md · Auth tushuntirish: owf login --help

owf                 # banner + status
owf setup           # interaktiv sozlash
owf auth add grok   # API key yoki OAuth
owf daily           # kunlik skan + analysis

Imkoniyatlar

Modul Buyruqlar
Setup owf setup, owf doctor, owf status
Auth pool owf auth add/list/remove/status/logout
Model owf model, owf providers, owf config
Agent owf daily, owf analyze, owf schedule
Tarix owf history, owf show, owf runs

Multi-provider LLM

Provider ID Auth
xAI / Grok grok API key + OAuth token
OpenAI / GPT openai API key + OAuth token
Anthropic / Claude claude API key + OAuth token
Google / Gemini gemini API key + OAuth token
Custom OpenAI-compat custom API key + base URL

Credentiallar: ~/.owf/auth.json (Hermes-style pool)
Config: ~/.owf/config.yaml

OAuth haqida: CLI brauzerni ochadi va access token / API key ni xavfsiz saqlaydi.
ChatGPT Pro yoki Claude.ai consumer session OAuth rasmiy third-party client talab qiladi — shuning uchun bu yerda API key + Bearer OAuth token modeli ishlatiladi (Hermes auth add UX).

O‘rnatish

cd "C:\New projects\Agents\OldWebsiteFinder"
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -r requirements.txt
pip install -e .

Tezkor start (Hermes kabi)

owf setup
# yoki
owf auth add grok
owf auth add openai --api-key sk-...
owf auth add claude --type oauth
owf auth add gemini

owf model
owf status
owf doctor

owf daily -n 3
owf analyze https://example.uz --provider claude

Auth misollar

# Interaktiv (brauzer ochiladi)
owf auth add grok
owf auth add openai
owf auth add claude
owf auth add gemini

# Non-interactive
owf auth add grok --api-key xai-...
owf auth add openai --api-key sk-...
owf auth add claude --api-key sk-ant-...
owf auth add gemini --api-key AIza...
owf auth add claude --access-token eyJ... --type oauth

owf auth list
owf auth remove grok 1
owf auth logout openai

Model / config

owf model -p grok -m grok-4.5
owf model -p claude -m claude-sonnet-4-20250514
owf config show
owf config set agent.daily_analysis_limit 10
owf config set fallback.providers "openai,claude"

Env orqali ham ishlaydi (pool bo‘sh bo‘lsa):

XAI_API_KEY=
OPENAI_API_KEY=
ANTHROPIC_API_KEY=
GEMINI_API_KEY=

Agent pipeline

  1. Discovery.uz seed + data/seed_sites.txt
  2. Tech scan — HTTPS, eski PHP/jQuery, table layout, CMS, security headers
  3. Priority score — upgrade ehtiyoj × auditoriya proxy
  4. Deep analysis — tanlangan LLM (Grok/GPT/Claude/Gemini)
  5. Persist — SQLite + reports/YYYY-MM-DD/*.md|json

CLI reference

owf                         banner + status dashboard
owf setup                   setup wizard
owf doctor                  health check
owf status                  component status
owf providers               LLM provider ro‘yxati
owf auth add <provider>     credential qo‘shish
owf auth list               pool
owf auth remove <p> <ref>   o‘chirish
owf auth logout [provider]  tozalash
owf model                   provider/model picker
owf config show|set|edit|path
owf daily [-n N] [-p provider] [-m model]
owf analyze URL
owf history [--date YYYY-MM-DD]
owf show <analysis_id>
owf runs
owf schedule --hour 9

Fayl tuzilmasi

~/.owf/
  auth.json          # credential pool
  config.yaml        # model, limits, fallback
  .env               # optional secrets
  reports/           # optional home reports
  logs/

src/old_website_finder/
  cli.py             # Hermes-style commands
  ui.py              # banner / panels
  home.py            # ~/.owf
  auth/              # providers, store, login
  llm/               # multi-provider router
  discovery/         # scan + score
  analysis/          # deep analysis
  pipeline/          # daily orchestrator

Eslatma

  • Agent read-only — saytlarni o‘zgartirmaydi.
  • Auditoriya bahosi proxy (analytics emas).
  • Productionda data/seed_sites.txt ni kengaytiring.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

old_website_finder-2.0.0.tar.gz (59.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

old_website_finder-2.0.0-py3-none-any.whl (68.7 kB view details)

Uploaded Python 3

File details

Details for the file old_website_finder-2.0.0.tar.gz.

File metadata

  • Download URL: old_website_finder-2.0.0.tar.gz
  • Upload date:
  • Size: 59.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.11.0

File hashes

Hashes for old_website_finder-2.0.0.tar.gz
Algorithm Hash digest
SHA256 bd603c986672abbf7a33c36b31fad38e690af5a5a5d20e7d823d072bff215a16
MD5 8abf0fb0043370de9826c145bb90cac1
BLAKE2b-256 111fd13c0ddc75d23b4ad95ec6f86f08876180ce0999f1a58383fd5185d06b01

See more details on using hashes here.

File details

Details for the file old_website_finder-2.0.0-py3-none-any.whl.

File metadata

File hashes

Hashes for old_website_finder-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 6d902ef9fa3454d2c1e04dff18339a8ae96bbe7305c5f756f969a930dcc92315
MD5 23f7093920b1939b28cde2c7659260bb
BLAKE2b-256 dedc61ec1c85fd3cc72b395dfb6abd39656916c18e45223f1e6d3efef8ff8c66

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page