skillZs
LIVE SKILL TAGS
>>> LIVE SKILLS INDEX <<<
* OPEN SOURCE *
NO LOGIN, NO TRACKING
REAL INSTALL DATA
← back to all skills
nomadamas/k-skill262 installs

s2b-notice-search

S2B 학교장터 공개 고객 공고/견적요청 목록을 브라우저 우선으로 조회하고 fixture HTML을 파싱해 공고 메타데이터를 정리한다.

How do I install this agent skill?

npx skills add https://github.com/nomadamas/k-skill --skill s2b-notice-search
view source ↗

Is this agent skill safe to install?

  • Gen Agent Trust Hubpass

    The skill is a procurement search tool designed to fetch and parse public notice data from the S2B School Marketplace (www.s2b.kr). It utilizes browser automation and HTTP requests for its primary functions. The security analysis identifies a surface for indirect prompt injection as it processes data from an external website, but no malicious intent or critical security vulnerabilities were discovered.

  • Socketpass

    No alerts

  • Snykwarn

    Risk: MEDIUM · 1 issue

What does this agent skill do?

S2B Notice Search

What this skill does

S2B 학교장터(www.s2b.kr)의 공개 고객 공고/견적요청 표면에서 학교·교육기관 관련 물품, 공사, 용역 공고를 조회하는 read-only 스킬이다.

  • 키워드, 기관명, 지역, 게시일 범위, 물품/공사/용역, 1인/2인 수의계약 조건을 정규화한다.
  • /S2BNCustomer/tcmo001.do 검색 폼에 보낼 실제 tcmo001Form POST form recipe를 만든다.
  • 목록 fixture HTML에서 공고/견적 코드, 제목, 기관, 상태, 품목구분, 게시일, 마감일, 상세 JavaScript action metadata를 추출한다.
  • 상세 fixture HTML에서 제목, 공고번호, 기관명, 품목구분, 계약방법, 게시일, 마감일, 본문, 첨부 action metadata를 추출한다.

입찰 참여, 견적 제출, 로그인, 결제, 낙찰/계약 처리 자동화는 하지 않는다.

Public path discovered from Aside

Aside Browser로 S2B 공개 고객 화면을 확인할 때 우선 진입점은 다음이다.

https://www.s2b.kr/S2BNCustomer/tcmo001.do

이 화면은 학교장터 고객용 공고/견적요청 조회 폼으로 동작하며, 브라우저에서 검색 조건을 채운 뒤 폼 제출 결과 표와 상세 이동 JavaScript action을 관찰한다. 확인된 form 이름은 tcmo001Form이고 주요 field는 forwardName=list01, pageNo, search_yn=Y, process_yn=Y, tender_sep1, tender_name, company_name_s, tender_sep2, tender_date_start, tender_date_end, tender_item, estimate_kind, areaKind다.

Fallback order

  1. Aside Browser REPL snapshot/action: 공개 페이지를 열고 snapshot으로 검색 폼과 결과 테이블을 확인한 뒤, 입력/제출/action metadata를 브라우저 표면에서 읽는다.
  2. BrowserOS CDP 또는 로컬 브라우저: Aside를 사용할 수 없으면 사용자가 띄운 BrowserOS 세션에 CDP로 붙거나 로컬 브라우저로 https://www.s2b.kr/S2BNCustomer/tcmo001.do를 열고 검색 폼을 제출한 뒤 렌더링된 목록/상세 HTML을 파싱한다.
  3. Direct HTTP best-effort: 같은 session cookie, referer, form token 조건이 브라우저와 동일하게 동작할 때만 /S2BNCustomer/tcmo001.do에 POST form body를 보낸다. session/form이 맞지 않으면 브라우저 경로로 돌아간다.

Inputs

InputValues
keyword검색어
organization기관/학교명
dateStart, dateEndYYYYMMDD 또는 YYYY-MM-DD; 3 calendar months 초과 금지
itemType물품, 공사, 용역, all
privateContract1인, 2인, all
region지역명
page1 이상의 정수

Package use

const {
  buildBrowserAutomationInstructions,
  buildSearchRequest,
  normalizeSearchOptions,
  parseDetailHtml,
  parseListHtml
} = require("s2b-notice-search")

Failure modes

  • malformed curl/client error: form body, cookies, referer, encoding, or client timeout이 잘못되어 S2B가 정상 HTML을 반환하지 않는다.
  • login/CAPTCHA/blocked: 로그인 벽, CAPTCHA, 차단/점검/보안 페이지가 나오면 우회하지 않고 실패로 분류한다.
  • empty: 검색 조건이 실제로 결과 없음이거나 session/form state가 맞지 않아 빈 목록이 반환된다.
  • upstream markup change: S2B table, 상세 action, hidden input, JavaScript 함수명이 바뀌면 파싱 결과가 부분적이거나 비어 있을 수 있다.

Done when

  • Aside Browser 또는 fallback browser에서 공개 S2B 조회 표면을 열었다.
  • 검색 기간이 유효하고 3 calendar months를 넘지 않는다.
  • 목록/상세 fixture parser가 필요한 필드를 추출했다.
  • 결과는 read-only lookup으로만 사용하고 제출/계약/로그인 자동화는 하지 않았다.

Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.

<a href="https://skillzs.dev/skills/nomadamas/k-skill/s2b-notice-search">View s2b-notice-search on skillZs</a>