Skip to content
View serenwoon's full-sized avatar
๐ŸŽฏ
Focusing
๐ŸŽฏ
Focusing

Block or report serenwoon

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please donโ€™t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this userโ€™s behavior. Learn more about reporting abuse.

Report abuse
serenwoon/README.md

I build agent harnesses for document-heavy work (proposals, public bids, RFPs) and measure whether they actually hold.

I kill more projects than I ship.

Six of the last eight ended before a line of code. Five were killed by the measurement itself.
One of them when a single grep showed 299 of 300 cases were already covered.


Claude Codex Upstage

Obsidian Python Node.js Next.js Flutter SQLite


๐Ÿค– AI๋กœ ์ผํ•˜๋Š” ๋ฐฉ์‹์„ ๋งŒ๋“ญ๋‹ˆ๋‹ค

ํ•˜๋„ค์Šค๋ฅผ ์ง์ ‘ ์งญ๋‹ˆ๋‹ค. ์Šฌ๋ž˜์‹œ ์ปค๋งจ๋“œ 15๊ฐœ, ์—ญํ•  ํ”„๋กฌํ”„ํŠธ 16๊ฐœ, ์‚ฌ๋žŒ์ด ๋‹จ๊ณ„๋งˆ๋‹ค ๊ฒŒ์ดํŠธ๋ฅผ ์„œ๋Š” ํŒŒ์ดํ”„๋ผ์ธ ํ•˜๋‚˜.

/jx-track        # ํŠธ๋ž™ ๋ธŒ๋ฆฌํ•‘์„ ํŒŒํŠธ๋„ˆ ๊ด€์ ์œผ๋กœ ํ•ด๋ถ€ํ•œ๋‹ค (์•„์ด๋””์–ด ๊ธˆ์ง€)
/jx-common       # ๋‹ค๋ฅธ ํŒ€์ด ๋‚ผ ๋‹ต์„ ๋จผ์ € ๋ฝ‘์•„ ๊ธˆ์ง€๋ชฉ๋ก์— ๋„ฃ๋Š”๋‹ค
/jx-skeptic      # ํ›„๋ณด๋ฅผ ํ•˜๋‚˜์”ฉ ๋…๋ฆฝ์ ์œผ๋กœ ๊ณต๊ฒฉํ•œ๋‹ค (์žฅ์  ๊ธˆ์ง€)
/jx-consistency  # ์‚ฐ์ถœ๋ฌผ ์ „์ฒด๋ฅผ ๊ธฐ๊ณ„์ ์œผ๋กœ ๋Œ€์กฐํ•œ๋‹ค

์—์ด์ „ํŠธ์—๊ฒŒ "์ž˜ ํ•ด์ค˜"๋ผ๊ณ  ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ๋ฌด์—‡์„ ํ•˜์ง€ ๋ง๋ผ๊ณ  ์ ๊ณ , ๊ฒฐ๊ณผ๋ฅผ ๋‹ค์‹œ ์…‰๋‹ˆ๋‹ค.


flowchart LR
    A["๐Ÿ“ ์žฐ๋‹ค"] --> B{"์ „์ œ๊ฐ€<br/>์‚ด์•„์žˆ๋‚˜"}
    B -->|์•„๋‹ˆ์˜ค| C["โœ‚๏ธ ์ ‘๋Š”๋‹ค<br/>์ฝ”๋“œ 0์ค„"]
    B -->|์˜ˆ| D["๐Ÿ”จ ๋งŒ๋“ ๋‹ค"]
    D --> E["๐Ÿ“ ๋‹ค์‹œ ์žฐ๋‹ค"]
    E --> F["๐Ÿ“ ํ‹€๋ฆฐ ๊ฑธ<br/>README์— ์ ๋Š”๋‹ค"]
    F --> A
    C --> A
Loading

์‹ค์ „ ์—ฌ๋Ÿ ๊ฑด์— ๋ฐฐํฌ ํ•˜๋‚˜. ์—ฌ์„ฏ ๊ฑด์€ ์ฝ”๋“œ๋ฅผ ํ•œ ์ค„๋„ ์•ˆ ์ผ๊ณ  ๋‹ค์„ฏ์€ ํŒ๋‹จ ๊ฒŒ์ดํŠธ์—์„œ ์ฃฝ์—ˆ์Šต๋‹ˆ๋‹ค.


serenwoon GitHub ํ†ต๊ณ„ ๋งŽ์ด ์“ด ์–ธ์–ด ์—ฐ์† ์ปค๋ฐ‹ ๊ธฐ๋ก
ํ”„๋กœ์ ํŠธ ์ €์žฅ์†Œ ํŒŒ์ด์ฌ ํ…Œ์ŠคํŠธ ํ…Œ์ŠคํŠธ๋ฅผ ๋‘” ์ €์žฅ์†Œ
13๊ฐœ ยท ๊ณต๊ฐœ 10 15,972์ค„ 616๊ฐœ 13๊ฐœ ์ค‘ 9๊ฐœ

2026-08-26 ์ง์ ‘ ์„ผ ๊ฐ’์ž…๋‹ˆ๋‹ค. find . -name '*.py' -not -path '*/.claude/*' -not -path '*/runs/*' | xargs cat | wc -l ยท grep -rhoE '^\s*def test_' | wc -l.
ํ•˜๋ฃจ ์ „์—๋Š” ๋‘ ๊ฒฝ๋กœ๋ฅผ ์•ˆ ๋นผ๊ณ  ์„ธ์„œ 21,257์ค„ยท826๊ฐœ๋กœ ์ ์—ˆ์Šต๋‹ˆ๋‹ค. ์›ŒํฌํŠธ๋ฆฌ ์‚ฌ๋ณธ์ด ํ•œ ์ €์žฅ์†Œ๋ฅผ ์„ธ ๋ฒˆ ์„ธ๊ณ  runs/ ์•„๋ž˜์— ๋”ด ์ €์žฅ์†Œ ์ฝ”๋“œ๊ฐ€ ๋“ค์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋จธ์ง€ ๋„ค ๊ฐœ์—๋Š” ํ…Œ์ŠคํŠธ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

๐Ÿ“ฆ ๋งŒ๋“  ๊ฒƒ

๋ฌด์—‡ ์žฌ๋ณด๋‹ˆ
ledger-reconcile ์›์žฅ ์ด๊ด€์ด ๋งž๋Š”์ง€ ์žฌ๋Š” ํ•˜๋„ค์Šค ๊ฒฐํ•จ 11์ข… ์ค‘ 7์ข…์ด ์ง‘๊ณ„ ๋Œ€์กฐ๋ฅผ ๊ทธ๋ƒฅ ํ†ต๊ณผ
edit-receipt ์ผ๊ด„ ํŽธ์ง‘์— ์˜์ˆ˜์ฆ์„ ๋ถ™์ธ๋‹ค ๋งŒ๋“  ๋‚  ์ž๊ธฐ README ๊ณ ์น˜๋‹ค ์ž๊ธฐํ•œํ…Œ ๊ฑธ๋ฆผ
spaced-quiz ๋…ธํŠธ ๋ฌธํ•ญ์„ ๊ฐ„๊ฒฉ ๋ฐ˜๋ณต์œผ๋กœ ๋ฌธํ•ญ ์ˆ˜๊ฐ€ ์„ธ๋Š” ๋ฒ•๋งˆ๋‹ค 723 / 781 / 722 / 686
wikilink-audit ๋ณผํŠธ์˜ ๊นจ์ง„ ๋งํฌ ์ •๋ฐ€๋„ 0.19 โ†’ 1.00 โ†’ 0.980
extraction-benchmark ์‚ฌ๋žŒ ๋Œ€ ํŒŒ์ดํ”„๋ผ์ธ 60์ดˆ โ†’ 8.6์ดˆ, ๋‹จ์„œ๋Š” ์–‘์ชฝ ๋‹ค ๋†“์นจ
hiring-traps Upstage Studio๋ฅผ ์žฌ๋ณธ ๊ธฐ๋ก ๋…ธ๋“œ 14์ข… ์ค‘ 4์ข…๋งŒ ์“ฐ์ธ๋‹ค
quote-review hiring-traps์˜ ์ธ์šฉ 793์นธ์„ ์‚ฌ๋žŒ์ด ๋ณด๋Š” ํ™”๋ฉด ยท ๋ฐฐํฌ ๋ฌด์ž‘์œ„ ์Šค๋ฌด ์นธ ์ค‘ ๋„ท์ด ๊ฒฉ์ž์™€ ๊ฐˆ๋ฆผ, ๋‘˜์€ ๊ฒฉ์ž๊ฐ€ ๋ชป ๋ณด๋Š” ์ข…๋ฅ˜

๐Ÿ‘‰ ์ „๋ถ€ ์‹คํŒจ๋ฅผ ์ง€์šฐ์ง€ ์•Š๊ณ  README์— ๋‚จ๊ฒจ๋’€์Šต๋‹ˆ๋‹ค. ์ˆซ์ž๊ฐ€ ๋‚˜๋น ์ง„ ๊ฒƒ๋„์š”.


๐Ÿ† Solar for Bid โ€” JunctionX Korea 2026

Team soft icecream ยท Upstage ํŠธ๋ž™ ยท ๊ธฐํš๊ณผ AI ํŒŒ์ดํ”„๋ผ์ธ ๋‹ด๋‹น (ํŒ€ 80์ปค๋ฐ‹ ์ค‘ 48)

๋‚˜๋ผ์žฅํ„ฐ ๊ณต๊ณ ๋ฅผ ์ฝ์–ด ์ž…์ฐฐ ๊ฐ€๋Šฅํ•œ ๊ฒƒ๋งŒ ์ถ”๋ฆฌ๊ณ , ์š”๊ตฌ์‚ฌํ•ญ ์ฒดํฌ๋ฆฌ์ŠคํŠธ ยท WBS ยท ์ž„๊ณ„๊ฒฝ๋กœ ยท ์ œ์ถœ๋ฌผ ๋ชฉ๋ก๊นŒ์ง€ ๋ƒ…๋‹ˆ๋‹ค.

Upstage Solar Flutter Node SQLite tests

๊ณต๊ณ  ํƒ์ƒ‰ ํ™”๋ฉด. 127๊ฑด ์ค‘ 3๊ฑด์„ ์ถ”์ฒœํ•˜๊ณ , ์ œ์™ธํ•œ 124๊ฑด์„ ์ด์œ ์™€ ๊ทผ๊ฑฐ ์ชฝ๊ณผ ํ•จ๊ป˜ ํŽผ์ณ ๋ณด์—ฌ์ค€๋‹ค.

์ถ”์ฒœ 3๊ฑด ์˜†์— ๋บ€ 124๊ฑด์˜ ์ด์œ ๊ฐ€ ๊ทผ๊ฑฐ ์ชฝ๊ณผ ํ•จ๊ป˜ ๋ถ™์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ํšŒ์‚ฌ์™€ ๊ณต๊ณ  ํŒ์ •์€ ๋ฐ๋ชจ์šฉ ๊ฐ€์ƒ ๋ฐ์ดํ„ฐ์ž…๋‹ˆ๋‹ค.
ํ™”๋ฉด ๋””์ž์ธ์€ ํŒ€ ๋””์ž์ด๋„ˆ Yejin Joo, ํ™”๋ฉด์— ๋ฐ•ํžŒ ํŒ์ • ๊ทœ์น™๊ณผ ๋ฐ๋ชจ ๋ฐ์ดํ„ฐ๋Š” ์ œ ๊ธฐํš ๋ฌธ์„œ์—์„œ ์™”์Šต๋‹ˆ๋‹ค.

ํ™”๋ฉด ์„ธ ์žฅ ๋” โ€” ํšŒ์‚ฌ ์นด๋“œ ยท WBS์™€ ์ž„๊ณ„๊ฒฝ๋กœ ยท ์ œ์ถœ ์ค€๋น„
ํšŒ์‚ฌ ์นด๋“œ ํ™”๋ฉด. ๊ฐ’๋งˆ๋‹ค ์ถœ์ฒ˜ ํŒŒ์ผ์ด ๋ถ™๊ณ , ์ฝ์ง€ ๋ชปํ•œ ๋‘ ์นธ์€ ๋ฏธํ™•์ธ์œผ๋กœ ๋‚จ์•„ ์ง์ ‘ ์ž…๋ ฅ์„ ๊ธฐ๋‹ค๋ฆฐ๋‹ค.

์ฝ์ง€ ๋ชปํ•œ ์นธ์€ 0์œผ๋กœ ์ฑ„์šฐ์ง€ ์•Š๊ณ  ๋ฏธํ™•์ธ์œผ๋กœ ๋‚จ๊ธด ๋’ค ์‚ฌ๋žŒ์ด ๋„ฃ์Šต๋‹ˆ๋‹ค.

WBS์™€ ์ž„๊ณ„๊ฒฝ๋กœ ํ™”๋ฉด. ๊ธฐ๊ฐ„์ด ๋ฌธ์„œ์— ์—†์œผ๋ฉด ๋ฏธ ๋ช…์‹œ๋กœ ํ‘œ๊ธฐํ•˜๊ณ , ์›๊ฐ€๋Š” M/M ์ถ”์ฒœ๊ฐ’๊นŒ์ง€๋งŒ ๋‚ธ๋‹ค.

๊ธฐ๊ฐ„์ด ๋ฌธ์„œ์— ์—†์œผ๋ฉด ๋น„์›Œ๋‘์ง€ ์•Š๊ณ  "๋ฏธ ๋ช…์‹œ"๋กœ ์ ์Šต๋‹ˆ๋‹ค. ์›๊ฐ€๋Š” M/M๊นŒ์ง€๋งŒ ๋‚ด๊ณ  ํˆฌ์ฐฐ๊ฐ€๋Š” ๋งŒ๋“ค์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

์ œ์ถœ ์ค€๋น„ ํ™”๋ฉด. ๋ถ€์ˆ˜์™€ ์œ ํšจ๊ธฐ๊ฐ„, ๋ณด์™„ ๋ฆฌ๋“œํƒ€์ž„, ๊ธˆ์ง€ ํ‘œํ˜„ ๊ฒ€์‚ฌ ๊ฒฐ๊ณผ๋ฅผ ์ชฝ์ˆ˜์™€ ํ•จ๊ป˜ ๋ณด์—ฌ์ค€๋‹ค.

๋ถ€์ˆ˜ ยท ์œ ํšจ๊ธฐ๊ฐ„ ยท ๋ณด์™„ ๋ฆฌ๋“œํƒ€์ž„, ๊ทธ๋ฆฌ๊ณ  ๊ธˆ์ง€ ํ‘œํ˜„ ๊ฒ€์‚ฌ์ž…๋‹ˆ๋‹ค. ์ธํŽธ ์ œ์ถœ๊ณผ ๋ถ„๋Ÿ‰ ์ƒํ•œ ๊ฐ™์€ ์ œ์•ฝ๋„ ๊ณต๊ณ ๋ฌธ ์ชฝ์ˆ˜๋ฅผ ๋‹ฌ๊ณ  ์˜ต๋‹ˆ๋‹ค.

flowchart LR
    N["๐Ÿ“ข ๋‚˜๋ผ์žฅํ„ฐ<br/>๊ณต๊ณ  ์›๋ฌธ"] --> S
    C["๐Ÿข ํšŒ์‚ฌ ์„œ๋ฅ˜<br/>๋“ฑ๋ก์ฆ ยท ์‹ค์ "] --> S
    S["Upstage Studio<br/>Parse โ†’ Classify โ†’ Extract<br/>HWP 77์ชฝ ๊ทธ๋Œ€๋กœ"] --> J
    J["Solar Pro<br/>์ž๊ฒฉ ยท ๊ณ„ํš ยท ์ œ์ถœ ํŒ์ •"] --> G
    G{"๋ฐฑ์—”๋“œ๊ฐ€<br/>๋‹ค์‹œ ์„ผ๋‹ค"} -->|"๋ถˆ์ผ์น˜"| G2["๐Ÿšฉ ๋ฏธํ™•์ธ์œผ๋กœ ํ‘œ์‹œ<br/>0์œผ๋กœ ์•ˆ ์ฑ„์šด๋‹ค"]
    G -->|"์ผ์น˜"| K["๐Ÿ“‹ Bid Kit<br/>์š”๊ตฌ์‚ฌํ•ญ ยท WBS<br/>์ž„๊ณ„๊ฒฝ๋กœ ยท ์ œ์ถœ๋ฌผ"]
    G2 --> K
Loading

ํ•œ ๊ฑด์— Studio ์žก 6ํšŒ ยท Solar 6ํšŒ. ์ฝœ๋“œ๋Ÿฐ 10๋ถ„ 22์ดˆ, ์บ์‹œ 4๋ถ„ 11์ดˆ์ž…๋‹ˆ๋‹ค.

์ž…์ฐฐ์€ ์„œ๋ฅ˜ ํ•œ ์žฅ์ด ๋น ์ง€๋ฉด ๊ทธ ์ž๋ฆฌ์—์„œ ์‹ค๊ฒฉ์ด๋ผ "์•„๋งˆ ๋งž์„ ๊ฒ๋‹ˆ๋‹ค"๋Š” ๊ฐ’์ด 0์ž…๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํŒ์ •๋งˆ๋‹ค ๊ทผ๊ฑฐ ๋ฌธ์„œ์™€ ์ชฝ์„ ๋‹ฌ๊ฒŒ ํ–ˆ๊ณ , ๋ชป ์ฝ์€ ์นธ์€ 0์œผ๋กœ ์ฑ„์šฐ์ง€ ์•Š๊ฒŒ ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋ธ์ด ๊ธˆ์ง€ ํ‘œํ˜„ 0๊ณณ์ด๋ผ๊ณ  ํ•œ ์›๊ณ ๋ฅผ ๋ฐฑ์—”๋“œ๊ฐ€ ์ชฝ ๋‹จ์œ„๋กœ ๋‹ค์‹œ ํ›‘์œผ๋‹ˆ 3๊ณณ์ด ๋‚˜์™”์Šต๋‹ˆ๋‹ค. ํŒ์ •์€ ์ „๋ถ€ ๋‘ ๋ฒˆ ์…‰๋‹ˆ๋‹ค.

ํ™”๋ฉด์— ๋ฐ•ํžŒ ๊ทœ์น™์€ ์ œ๊ฐ€ ์“ด ๊ธฐํš ๋ฌธ์„œ์—์„œ ๊ทธ๋Œ€๋กœ ์™”์Šต๋‹ˆ๋‹ค. ๋ชจ๋“  ํŒ์ •์— ๊ทผ๊ฑฐ ํŽ˜์ด์ง€๋ฅผ ๋ถ™์ธ๋‹ค, ๋ชป ์ฝ์€ ์นธ์€ ๋ฏธํ™•์ธ์œผ๋กœ ๋‚จ๊ธด๋‹ค, ํˆฌ์ฐฐ๊ฐ€๋Š” ๋งŒ๋“ค์ง€ ์•Š๋Š”๋‹ค.

์ง€์ผœ์ง€์ง€ ์•Š์€ ์ž๋ฆฌ๋„ ๊ทธ๋Œ€๋กœ ๋‘ก๋‹ˆ๋‹ค. ์ € ํ—ค๋“œ๋ผ์ธ "127๊ฑด ์ค‘ 3๊ฑด"์€ ํ”ฝ์Šค์ฒ˜์— ๋ฐ•ํžŒ ์ƒ์ˆ˜(screening.demo.json)๋ผ์„œ ์ถœ์ฒ˜๊ฐ€ ์—†๊ณ , ๊ทธ๊ฑด ์ œ๊ฐ€ ์“ด "์ถœ์ฒ˜ ์—†๋Š” ์ˆซ์ž ๊ธˆ์ง€"์— ์ •๋ฉด์œผ๋กœ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค. ๋Œ€ํšŒ ์ค‘์— ๊ฑธ๋ฆฐ ๊ฑธ ์ ์–ด๋งŒ ๋‘๊ณ  ๋ชป ๊ณ ์ณค์Šต๋‹ˆ๋‹ค.

๋ฐ˜๋Œ€๋กœ ๊ฐ„ ์ž๋ฆฌ๋„ ์žˆ์Šต๋‹ˆ๋‹ค. ๋ชฉ์—…์˜ ๋“œ๋กญ์กด์€ ๋‹ค์„ฏ ํ˜•์‹์„ ์•ฝ์†ํ•˜๋Š”๋ฐ, ์ฝ”๋“œ๋Š” ๊ทธ ์•ฝ์†์„ ๋˜ํ’€์ดํ•˜์ง€ ์•Š๊ณ  ํ—ˆ์šฉ ๋ชฉ๋ก์—์„œ ๋ฌธ๊ตฌ๋ฅผ ๋งŒ๋“ค์–ด "PDF ยท HWPใƒปHWPXใƒปJPGใƒปJPEGใƒปPNG๋Š” ์ค€๋น„ ์ค‘"์„ ๋„์›๋‹ˆ๋‹ค.


์ด๋ฉ”์ผ

footer

Popular repositories Loading

  1. youtube-sentiment-pipeline youtube-sentiment-pipeline Public

    ์œ ํŠœ๋ธŒ ๋Œ“๊ธ€ ๊ฐ์ •๋ถ„์„ ํŒŒ์ดํ”„๋ผ์ธ โ€” ๋ถ„๋ฅ˜๊ธฐ๋ฅผ ๊ณ ๋ฅด๊ธฐ ์ „์— ํ‰๊ฐ€ ๊ธฐ์ค€๋ถ€ํ„ฐ ๊ณ ์ •ํ•œ๋‹ค

    Python

  2. agent-workflow agent-workflow Public

    ๋ฌธ์„œ ์ž‘์—…์„ ์—์ด์ „ํŠธ๋กœ ๋Œ๋ฆฌ๋Š” ํŒ์ • ๋ฃจํ”„ โ€” ๊ทœ์น™ ์—ฌ๋Ÿ ๊ฐœ๊ฐ€ ์ „๋ถ€ ์‹ค์ œ๋กœ ํ‹€๋ฆฐ ๋’ค์— ์ƒ๊ฒผ๋‹ค

    Python

  3. extraction-benchmark extraction-benchmark Public

    ์‚ฌ๋žŒ ๋Œ€ ํŒŒ์ดํ”„๋ผ์ธ ์‹ค์ธก โ€” ๊ฑด๋‹น 60์ดˆ์—์„œ 8.6์ดˆ, ๊ทธ๋Ÿฐ๋ฐ ๋‹จ์„œ๋Š” ์–‘์ชฝ ๋‹ค ํ˜๋ ธ๋‹ค

    HTML

  4. serenwoon serenwoon Public

    ํ”„๋กœํ•„

  5. requirement-guard requirement-guard Public

    ๊ทœ๊ฒฉ ๋ฌธ์„œ์—์„œ ์š”๊ตฌ์‚ฌํ•ญ ๋Œ€์žฅ์„ ๋ฝ‘์•„, ์›๊ณ ๊ฐ€ ๊ทธ ๋Œ€์žฅ๊ณผ ์–ด๊ธ‹๋‚˜๋Š” ์ž๋ฆฌ๋ฅผ ์ฐพ๋Š”๋‹ค โ€” ํŒ์ •์— ๋ชจ๋ธ์„ ๋ถ€๋ฅด์ง€ ์•Š๋Š”๋‹ค

    Python

  6. unsourced-terms unsourced-terms Public

    ๊ทผ๊ฑฐ ๋ฌธ์„œ์— ์—†๋Š” ๋ง์„ ์›๊ณ ์—์„œ ์ฐพ๋Š”๋‹ค โ€” ๊ธˆ์ง€์–ด ๋ชฉ๋ก์„ ์†์œผ๋กœ ์•ˆ ์ ๋Š” ์ชฝ์œผ๋กœ

    Python