Agent skill

Sutochno

by borski in borski/travel-hacking-toolkit

Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer).

MITAuto-check passedDevOps & Cloud

Install Sutochno

skills CLI
$ npx skills add borski/travel-hacking-toolkit --skill sutochno -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install borski/travel-hacking-toolkit sutochno --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/borski/travel-hacking-toolkit.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/travel-hacking-toolkit/skills/sutochno .claude/skills/sutochno && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
sutochno
GitHub stars
688
Token cost
~2.1k tokens
SKILL.md length
855 words
Files
5 (incl. scripts)
Skills in repo
46
Repo updated
First seen
Licence
MIT

At a glance

Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer).

  • Phrases include search Sutochno
  • SKILL.md covers Prerequisites, When to Use, When NOT to Use and Usage, plus 4 more sections
  • Runs Python and Shell scripts from its folder; calls python3, docker and pip; reaches tbilisi.sutochno.ru and kutaisi.sutochno.ru
  • Russian apartment rental

What it does

Sutochno is an agent skill from borski/travel-hacking-toolkit. Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer). Best for Russian-speaking travellers booking stays in Georgia / the CIS, where Airbnb and Booking have withdrawn or do not accept Russian cards. Sutochno is NOT behind a bot wall — it ships on the toolkit standard patchright-docker base but runs the bundled chromium headless with no Akamai sensor to defeat. Trigger phrases include search Sutochno…

Its SKILL.md is about 2.1k tokens, which your agent loads only when the skill is triggered. The skill folder holds 6 other files, including scripts (for example `scripts/entrypoint.sh`, `scripts/search_sutochno.py` and `tests/test_search_sutochno.py`).

It sits in DevOps & Cloud, covering Containers. It works with Docker. The repository describes itself as: AI-powered travel hacking and search with cash, points, miles, and award flights. Drop-in skills and MCP servers for Claude, Codex, and OpenCode. The licence is MIT.

When your agent uses it

  • Phrases include search Sutochno
  • Russian apartment rental
  • Tbilisi apartment
  • Batumi apartment

Example prompts

  • “/sutochno”

Requirements

  • Python 3
  • A Bash shell
  • Docker

What it can do on your machine

Read from SKILL.md and the folder at commit db82131. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Ships 2 files in scripts/ (Python and Shell), which the agent can run.

    Shell commands in SKILL.md call:

    • python3
    • docker
    • pip

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • tbilisi.sutochno.ru
    • kutaisi.sutochno.ru
    • batumi.sutochno.ru
    • sutochno.ru

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Sutochno loads about 2.1k tokens when it runs. Until then it costs about 159 tokens; SKILL.md has 855 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~159
When it runs · the whole SKILL.md, loaded when a task matches
~2.1k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.

SKILL.md

The full file from borski/travel-hacking-toolkit at commit db82131, republished under its MIT licence (© borski). 855 words, ~2,109 tokens.

Download SKILL.mdSave it as .claude/skills/sutochno/SKILL.md (or your agent's skills folder). This skill also uses 4 other files; get the full folder from GitHub.
name
sutochno
description
Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer). Best for Russian-speaking travellers booking stays in Georgia / the CIS, where Airbnb and Booking have withdrawn or do not accept Russian cards. Sutochno is NOT behind a bot wall — it ships on the toolkit standard patchright-docker base but runs the bundled chromium headless with no Akamai sensor to defeat. Trigger phrases include search Sutochno, суточно, Russian apartment rental, ruble payment, Mir card, Tbilisi apartment, Batumi apartment, Georgia CIS rental.
category
hotels
summary
Sutochno.ru Russian apartment search via Patchright. Ruble / Mir payment for Georgia / CIS stays.
api_key
None
docker_image
ghcr.io/borski/sutochno

Search Sutochno.ru (СУТОЧНО.РУ) — a Russian short-term-rental marketplace where you book apartments, rooms, and houses directly from owners and pay in rubles, typically via Mir card or bank transfer. It's the natural fit for Russian-speaking travellers booking stays in Georgia / the CIS, where Airbnb and Booking have withdrawn or won't take Russian cards. It complements the Airbnb MCP and the vrbo skill: those reach Western inventory, Sutochno reaches the ruble-priced, owner-direct inventory those platforms miss.

Sutochno is NOT behind Akamai. Unlike the vrbo skill (which fights an Akamai bot wall and must run headed), Sutochno's server-rendered city pages load fine headless — there is no bot sensor to defeat. This skill still ships on the toolkit's standard patchright-docker base (the same image every browser skill builds on), but only for the bundled chromium + OS deps; it does not need Patchright's stealth. Patchright is a drop-in Playwright fork, so the browser API is identical. The default mode is headless; --headed is opt-in for debugging.

The JSON API is auth-walled — we scrape pages instead. Sutochno's /api/* endpoints (e.g. /api/geo/suggest) return 403 Application authentication failed without an app token the SPA computes client-side. So this skill does not touch the API. It scrapes the server-rendered city pages, where the listing cards are already present in the HTML.

City results live on SUBDOMAINS. Each city has its own host: https://tbilisi.sutochno.ru/, https://batumi.sutochno.ru/, https://kutaisi.sutochno.ru/, etc. The country directory https://sutochno.ru/georgia lists the supported Georgian cities and links out to https://{city}.sutochno.ru/<listingId> cards. Pass the city as a subdomain keyword (--city tbilisi) or a full URL (--url).

No login required. Sutochno search results are public; the skill finds rentals and returns links only — it does not log in or complete a booking.

Prerequisites

bash
pip install patchright && patchright install chromium

Or use Docker (no local install):

bash
docker build -t sutochno skills/sutochno/

When to Use

  • A Russian-speaking traveller (or one travelling with Russian companions) booking accommodation that's paid in rubles via Mir card / bank transfer
  • Georgia / CIS stays (Tbilisi, Batumi, Kutaisi, …) where Airbnb / Booking withdrew or won't accept Russian cards
  • Cross-referencing owner-direct ruble inventory against Airbnb / VRBO before booking a multi-night stay

When NOT to Use

  • Completing a booking. This skill finds rentals and returns links only. Do not attempt to complete a purchase or contact the owner.
  • Non-CIS destinations. For Western destinations Airbnb (MCP), the vrbo skill, and Booking have far deeper inventory and card support — use those.
  • Hotels / branded chains. Use compare-hotels / serpapi / liteapi / the portal skills.

Usage

bash
# Tbilisi, human-readable table (headless by default)
python3 skills/sutochno/scripts/search_sutochno.py --city tbilisi

# Batumi, JSON, only 9.0+ rated, under 8000 rubles/night, top 15
python3 skills/sutochno/scripts/search_sutochno.py --city batumi \
  --min-rating 9.0 --max-price 8000 --limit 15 --json

# Explicit full URL (e.g. a city page with query filters already applied)
python3 skills/sutochno/scripts/search_sutochno.py \
  --url "https://kutaisi.sutochno.ru/" --json

# Docker
docker run --rm sutochno --city tbilisi --json
Arguments
FlagDefaultNotes
--cityone of city/url requiredCity subdomain keyword, e.g. tbilisi, batumi. Resolves to https://{city}.sutochno.ru/.
--urlone of city/url requiredFull city URL — use instead of --city to pass a page that already carries query filters.
--min-rating0Client-side filter, 0–10 scale (e.g. 9.0). Listings with no rating are kept.
--max-price0Client-side per-night ceiling in rubles. Listings with no price are kept.
--limit20Max listings returned (after sort).
--headedoffRun the browser headed (debugging only — Sutochno has no bot wall, so headless is the default).
--jsonoffEmit JSON to stdout (use this for orchestration).
Show full SKILL.md (356 more words)Show less

Selectors (the scrape contract)

On a city page, each listing card exposes:

FieldSelectorRaw shapeExtraction
name + link.card-content__object-type (an <a>)text + href → https://{city}.sutochno.ru/<id> (or /hotels/<id>)name text; id = trailing digits of href
price.card-prices__price"4 890 ₽ за сутки"substring before ₽, strip all non-digits → 4890
rating + reviews.card-prices__rating"10 отзывов 9,8 (10) …"rating = first /\d{1,2},\d/ (comma → dot); reviews = /(\d+)\s*отзыв/
address.card-content__address"Тбилиси, Старый город"as-is

The card wrapper is the nearest ancestor of the name node that also contains a .card-prices element — name and prices are siblings, not nested — so the extractor climbs up from the name link until el.querySelector('.card-prices') is truthy, then reads price/rating from inside that wrapper.

Price gotcha: the thousands separator in the price string is a mixed-width / non-breaking space, so a naive \d+ regex truncates the leading digit (returns 890 for 4 890). The reliable method is to split on ₽ then strip all non-digits — that's what parse_price does.

Images are lazy-loaded placeholders (lzy-img.gif) on first paint, so the scraper does not rely on photos.

Output

JSON shape (with --json):

json
{
  "source": "sutochno",
  "searchUrl": "https://tbilisi.sutochno.ru/",
  "query": { "city": "tbilisi", "url": null, "min_rating": 9.0, "max_price": 8000 },
  "count": 12,
  "listings": [
    {
      "id": "1234567",
      "name": "Уютная студия в центре",
      "area": "Тбилиси, Старый город",
      "rub_per_night": 4890,
      "rating": 9.8,
      "reviews": 10,
      "url": "https://tbilisi.sutochno.ru/1234567"
    }
  ]
}

Listings are deduped by id and sorted rating desc, then price asc (entries with no rating / price sort last). rub_per_night is the lead nightly rate in rubles — open the listing URL to confirm the all-in total (cleaning, deposit, and any owner fees may not be in the SERP figure).

Tests

The pure logic (city-URL building, ruble price parsing, rating/review parsing, listing-id extraction, normalisation, dedupe / filter / sort) is covered by stdlib unittest tests — no browser, network, or Patchright needed (the patchright import is lazy):

bash
python3 -m unittest discover -s skills/sutochno/tests -v   # or: python3 -m pytest skills/sutochno/tests

The browser-driven path (page navigation, DOM extraction) can't be unit-tested offline — verify it with a real city search (see Usage above).

Known fragility

  • DOM selectors drift. Sutochno may revise the card-content__* / card-prices__* class names. If a live search returns 0 cards on a city you know has inventory, re-inspect a city page and refresh the selectors in EXTRACT_JS and the selector table above (file a P2 task).
  • The API stays auth-walled. Don't be tempted back to /api/* — it needs the SPA's computed app token and returns 403 Application authentication failed without it. The server-rendered pages are the supported surface.

© borski, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 4 other files (scripts) in plugins/travel-hacking-toolkit/skills/sutochno of borski/travel-hacking-toolkit.

  • SKILL.md
  • Dockerfile
  • scripts/entrypoint.sh
  • scripts/search_sutochno.py
  • tests/test_search_sutochno.py

Open the folder on GitHubat commit db82131

Compare with similar skills

Sutochno next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Sutochno compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Sutochno this skillborski/travel-hacking-toolkit688—~2.1kAutomated safety check: PassMIT
Iron Proxy Gateway for NanoClawnanocoai/nanoclaw31k—~4.6kAutomated safety check: NotesMIT
GreptimeDB Dev Docker ImageGreptimeTeam/greptimedb6.7k—~4kAutomated safety check: NotesApache-2.0
Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit2606 repos~1.1kAutomated safety check: NotesCustom licence
LangBot Deployment Guidelangbot-app/LangBot18k—~1.2kAutomated safety check: NotesApache-2.0
Build Openshell Mxc WindowsNVIDIA/OpenShell15k—~4.9kAutomated safety check: PassApache-2.0

Similar skills

  • Installs or refreshes Iron Proxy and its Iron Control web console for NanoClaw, with a local Docker setup, database, credentials and a human approval bridge.

    31k GitHub stars~4.6k tokensUpdated 2 days ago
    DevOps & CloudAuto-check: notes
  • GreptimeDB Dev Docker Image

    GreptimeTeam/greptimedb

    Packages a locally built GreptimeDB debug binary into a development-only Docker image for local-cluster testing, with an optional push to a dev registry.

    6.7k GitHub stars~4k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Senior DevOps Toolkit

    maslennikov-ig/claude-code-orchestrator-kit

    Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…

    260 GitHub starsUsed in 6 repos~1.1k tokens
    DevOps & CloudAuto-check: notes
  • LangBot Deployment Guide

    langbot-app/LangBot

    Deploys and configures a LangBot instance with Docker Compose or Kubernetes, covering config.yaml, the Box sandbox runtime, the plugin runtime and the global API key.

    18k GitHub stars~1.2k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes
  • Official

    Maintain and validate OpenShell's build-only Windows MSVC lane for x64 and ARM64.

    15k GitHub stars~4.9k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Omnigent Docker Compose Deploy

    omnigent-ai/omnigent

    Brings up the Omnigent server and Postgres as a Docker compose stack on any Docker host, and covers the Dockerfile's runtime and host build targets for extending it to a new platform.

    11k GitHub stars~1.3k tokensUpdated yesterday
    DevOps & CloudAuto-check: notes

More from borski/travel-hacking-toolkit

All 46 skills in this repo
  • Amex Travel

    borski/travel-hacking-toolkit

    Search Amex travel portal for cash prices, MR points pricing, IAP discounts, and FHR/THC hotel benefits via Patchright.

    688 GitHub stars~3.1k tokensUpdated 3 days ago
    Auto-check passed
  • Chase Travel

    borski/travel-hacking-toolkit

    Search Chase UR travel portal via Patchright for cash prices, points pricing, Points Boost offers, and Chase Edit hotel benefits.

    688 GitHub stars~2.8k tokensUpdated 3 days ago
    Auto-check passed
  • Deutsche Bahn

    borski/travel-hacking-toolkit

    Deutsche Bahn train schedules, journey planning, and departures across Germany and into neighboring countries (Austria, Switzerland, Netherlands, France, Belgium).

    688 GitHub stars~1.5k tokensUpdated 3 days ago
    Auto-check passed
  • Ticketsatwork

    borski/travel-hacking-toolkit

    Search TicketsAtWork (EBG corporate perks) for hotels, theme park tickets, attractions, and rental cars via Patchright.

    688 GitHub stars~4.2k tokensUpdated 3 days ago
    Auto-check passed
  • Vrbo

    borski/travel-hacking-toolkit

    Search VRBO (Vrbo / Expedia Group) vacation rentals including entire homes, condos, and cabins via Patchright browser automation.

    688 GitHub stars~1.7k tokensUpdated 3 days ago
    Auto-check passed
  • American Airlines

    borski/travel-hacking-toolkit

    Check American Airlines AAdvantage balance, elite status, and loyalty points via Patchright.

    688 GitHub stars~1.3k tokensUpdated 3 days ago
    Auto-check passed

Works with

Categories

Questions about Sutochno

What does Sutochno do?

Search Sutochno.ru (СУТОЧНО.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer). Sutochno is an agent skill from borski/travel-hacking-toolkit.РУ), a Russian short-term apartment-rental platform where you book directly from owners and pay in rubles (Mir card / bank transfer).

When should I use Sutochno?

Sutochno fits situations like: phrases include search Sutochno; russian apartment rental; tbilisi apartment; batumi apartment.

How do I install Sutochno in Claude Code?

Run `npx skills add borski/travel-hacking-toolkit --skill sutochno -a claude-code`. Or copy the skill folder (plugins/travel-hacking-toolkit/skills/sutochno in borski/travel-hacking-toolkit) into .claude/skills/sutochno in your project. Claude Code loads it when a task matches its description.

How do I install Sutochno in Codex?

Run `npx skills add borski/travel-hacking-toolkit --skill sutochno -a codex`. Or copy the skill folder (plugins/travel-hacking-toolkit/skills/sutochno in borski/travel-hacking-toolkit) into .agents/skills/sutochno in your project. Codex loads it when a task matches its description.

Can I use Sutochno in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add borski/travel-hacking-toolkit --skill sutochno -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/sutochno, .gemini/skills/sutochno, .github/skills/sutochno and .opencode/skills/sutochno in your project.

What does Sutochno need to run?

Going by SKILL.md and its folder, Sutochno needs Python and a shell for the scripts in its folder and the command-line tools its instructions call (python3, docker and pip). Our summary lists: Python 3; A Bash shell; Docker.

Does Sutochno access the network?

SKILL.md names 4 domains. In commands or code: tbilisi.sutochno.ru, kutaisi.sutochno.ru, batumi.sutochno.ru and sutochno.ru; the agent is likely to contact these when it follows the instructions. This is read from the text; nothing was executed.

Is Sutochno safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.

What licence does Sutochno use?

Sutochno is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Sutochno use?

About 2.1k tokens (SKILL.md is roughly 8.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Sutochno?

Skills that share tags, products or a category with Sutochno: Iron Proxy Gateway for NanoClaw (nanocoai/nanoclaw, 31k stars), GreptimeDB Dev Docker Image (GreptimeTeam/greptimedb, 6.7k stars), Senior DevOps Toolkit (maslennikov-ig/claude-code-orchestrator-kit, 260 stars) and LangBot Deployment Guide (langbot-app/LangBot, 18k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Sutochno?

borski (a GitHub user) maintains it in borski/travel-hacking-toolkit, which has 688 GitHub stars. The repository holds 46 skills in this directory. The repository was last updated on October 5, 2026.

Source: borski/travel-hacking-toolkit on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.