@yeomyeonggeori/raon-os 0.1.0

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/SKILL.md ADDED
@@ -0,0 +1,91 @@
1
+ ---
2
+ name: raon-os
3
+ description: AI-powered startup companion for Korean founders. Evaluate business plans, match government funding programs, and connect with investors — all through natural conversation. Use when a founder asks to evaluate a business plan, find government funding (TIPS, K-Startup, etc.), get investor recommendations, or needs startup lifecycle support (ideation → funding → growth → exit).
4
+ ---
5
+
6
+ # Raon OS — Startup Companion
7
+
8
+ 스타트업 파운더를 위한 AI 동료. 아이디어를 사업으로 만드는 전 과정을 지원한다.
9
+
10
+ ## 기능
11
+
12
+ ### 1. biz-plan — 사업계획서 평가
13
+ 사업계획서(PDF/텍스트)를 분석하여 점수 + 개선안을 제공한다.
14
+
15
+ ```bash
16
+ # PDF 평가
17
+ {baseDir}/scripts/raon.sh biz-plan evaluate --file /path/to/plan.pdf
18
+
19
+ # 텍스트 평가
20
+ {baseDir}/scripts/raon.sh biz-plan evaluate --text "사업 아이디어 설명..."
21
+
22
+ # 개선안 생성
23
+ {baseDir}/scripts/raon.sh biz-plan improve --file /path/to/plan.pdf
24
+ ```
25
+
26
+ **평가 항목:**
27
+ - 문제 정의 및 솔루션 적합성
28
+ - 시장 규모 및 경쟁 분석
29
+ - 비즈니스 모델 타당성
30
+ - 팀 역량
31
+ - 재무 계획
32
+ - 기술 차별성
33
+
34
+ **출력:** 100점 만점 종합 점수 + 항목별 점수 + 구체적 개선 제안
35
+
36
+ ### 2. gov-funding — 정부 지원사업 매칭
37
+ 스타트업 프로필 기반으로 적합한 정부 지원사업을 추천한다.
38
+
39
+ ```bash
40
+ # 매칭 (사업계획서 기반)
41
+ {baseDir}/scripts/raon.sh gov-funding match --file /path/to/plan.pdf
42
+
43
+ # 매칭 (키워드 기반)
44
+ {baseDir}/scripts/raon.sh gov-funding match --industry "AI/SaaS" --stage "early" --region "서울"
45
+
46
+ # 지원사업 상세 정보
47
+ {baseDir}/scripts/raon.sh gov-funding info --program "TIPS"
48
+
49
+ # 지원서 초안 생성
50
+ {baseDir}/scripts/raon.sh gov-funding draft --program "TIPS" --file /path/to/plan.pdf
51
+ ```
52
+
53
+ **지원 프로그램:** TIPS, K-Startup 그랜드챌린지, 창업성장기술개발, 예비창업패키지, 초기창업패키지 등
54
+
55
+ ### 3. investor-match — 투자자 매칭 (추후 연동)
56
+ 스타트업 단계/산업에 맞는 투자자를 추천한다.
57
+
58
+ ```bash
59
+ # 투자자 추천
60
+ {baseDir}/scripts/raon.sh investor-match --stage "pre-a" --industry "AI" --amount "1M"
61
+ ```
62
+
63
+ ## 사용 흐름
64
+
65
+ 일반적인 파운더 여정:
66
+
67
+ ```
68
+ 1. "내 사업계획서 평가해줘" → biz-plan evaluate
69
+ 2. "어떻게 고치면 돼?" → biz-plan improve
70
+ 3. "이걸로 지원할 수 있는 정부사업 있어?" → gov-funding match
71
+ 4. "TIPS 지원서 초안 만들어줘" → gov-funding draft
72
+ 5. "투자자도 연결해줘" → investor-match
73
+ ```
74
+
75
+ ## API 연동
76
+
77
+ 현재 버전은 로컬 분석 (LLM 기반 RAG)으로 동작한다.
78
+ K-Startup AI API 연동 시 환경변수 설정:
79
+
80
+ ```bash
81
+ export RAON_API_URL="https://api.k-startup.ai"
82
+ export RAON_API_KEY="your-api-key"
83
+ ```
84
+
85
+ API가 설정되지 않으면 로컬 LLM + RAG 파이프라인으로 폴백한다.
86
+
87
+ ## 평가 기준 참고
88
+
89
+ 정부 지원사업별 심사 기준은 references/ 디렉토리 참조:
90
+ - `references/tips-criteria.md` — TIPS 심사 기준
91
+ - `references/gov-programs.md` — 주요 정부 지원사업 목록 및 자격 요건
package/package.json ADDED
@@ -0,0 +1,28 @@
1
+ {
2
+ "name": "@yeomyeonggeori/raon-os",
3
+ "version": "0.1.0",
4
+ "description": "AI-powered startup companion for Korean founders. Evaluate business plans, match government funding, connect with investors.",
5
+ "keywords": [
6
+ "openclaw",
7
+ "openclaw-skill",
8
+ "startup",
9
+ "korean-startup",
10
+ "business-plan",
11
+ "government-funding",
12
+ "tips",
13
+ "ai-agent",
14
+ "raon"
15
+ ],
16
+ "homepage": "https://k-startup.ai",
17
+ "repository": {
18
+ "type": "git",
19
+ "url": "https://github.com/yeomyeonggeori/raon-os"
20
+ },
21
+ "author": "Yeomyeonggeori Inc. <iam@dawn.kim>",
22
+ "license": "MIT",
23
+ "files": [
24
+ "SKILL.md",
25
+ "scripts/",
26
+ "references/"
27
+ ]
28
+ }
@@ -0,0 +1,68 @@
1
+ # 주요 정부 지원사업 (2025-2026)
2
+
3
+ ## Tier 1: 대형 (1억+)
4
+
5
+ ### TIPS (민간투자주도형 기술창업)
6
+ - 규모: 최대 5억원 (R&D 3억 + 사업화 2억)
7
+ - 기간: 2년
8
+ - 대상: 창업 7년 이내, 기술 기반
9
+ - 특징: VC 추천 필수, 합격률 ~20%
10
+ - 심사 기준: references/tips-criteria.md 참조
11
+
12
+ ### Global TIPS
13
+ - 규모: 최대 50억원
14
+ - 조건: TIPS 선정 기업 + 해외투자 유치 실적
15
+ - 특징: 해외 VC 투자 매칭 방식
16
+
17
+ ### K-Startup 그랜드챌린지
18
+ - 규모: 최대 3억원 + 엑셀러레이팅
19
+ - 대상: 해외 진출 의지 있는 스타트업
20
+ - 특징: 글로벌 스타트업 대상 (한국 진출 포함)
21
+
22
+ ### 창업성장기술개발 (디딤돌/전략형)
23
+ - 규모: 1~3억원
24
+ - 기간: 1~2년
25
+ - 대상: 창업 7년 이내 기술 기반
26
+ - 특징: 기술 중심 평가
27
+
28
+ ## Tier 2: 중형 (5천만~1억)
29
+
30
+ ### 초기창업패키지
31
+ - 규모: 최대 1억원
32
+ - 대상: 창업 3년 이내
33
+ - 특징: 사업화 자금 + 멘토링
34
+
35
+ ### 창업도약패키지
36
+ - 규모: 최대 3억원
37
+ - 대상: 창업 3~7년
38
+ - 특징: 성장 단계 지원
39
+
40
+ ## Tier 3: 초기 (5천만 이하)
41
+
42
+ ### 예비창업패키지
43
+ - 규모: 최대 1억원
44
+ - 대상: 예비 창업자 (사업자 등록 전)
45
+ - 특징: 교육 + 사업화 자금
46
+
47
+ ### 청년창업사관학교
48
+ - 규모: 최대 1억원
49
+ - 대상: 만 39세 이하
50
+ - 특징: 입주 공간 + 자금 + 교육
51
+
52
+ ## 선택 가이드
53
+
54
+ | 단계 | 추천 프로그램 |
55
+ |------|-------------|
56
+ | 아이디어만 있음 | 예비창업패키지 |
57
+ | 법인 설립 직후 | 초기창업패키지, 청년창업사관학교 |
58
+ | MVP/PoC 있음 | TIPS, 창업성장기술개발 |
59
+ | 매출 발생 | TIPS, 창업도약패키지 |
60
+ | 해외 진출 | K-Startup 그랜드챌린지, Global TIPS |
61
+
62
+ ## 공통 준비 사항
63
+ - 사업계획서 (PDF, 보통 20~30페이지)
64
+ - 팀 소개 및 대표자 이력
65
+ - 기술 설명서 또는 특허/IP
66
+ - 재무제표 (법인인 경우)
67
+ - 시장 분석 자료
68
+ - 고객 검증 자료 (PoC, LOI, 매출 증빙)
@@ -0,0 +1,40 @@
1
+ # TIPS 심사 기준
2
+
3
+ ## 개요
4
+ - 주관: 중소벤처기업부
5
+ - 규모: 최대 5억원 (R&D 3억 + 사업화 2억), 2년
6
+ - 대상: 창업 7년 이내 기술 기반 스타트업
7
+
8
+ ## 심사 항목 (100점)
9
+
10
+ ### 1. 기술성 (30점)
11
+ - 기술의 혁신성/차별성 (15점)
12
+ - 기술 완성도 및 개발 역량 (10점)
13
+ - 지식재산권 확보 가능성 (5점)
14
+
15
+ ### 2. 시장성 (25점)
16
+ - 목표 시장 규모 및 성장성 (10점)
17
+ - 경쟁 현황 및 진입 전략 (10점)
18
+ - 고객 검증 (PoC, LOI, 매출) (5점)
19
+
20
+ ### 3. 사업성 (25점)
21
+ - 비즈니스 모델 타당성 (10점)
22
+ - 수익 구조 및 확장성 (10점)
23
+ - 재무 계획 합리성 (5점)
24
+
25
+ ### 4. 대표자/팀 역량 (20점)
26
+ - 대표자 경력 및 도메인 전문성 (10점)
27
+ - 팀 구성 적합성 (5점)
28
+ - 실행 역량 (이전 창업/프로젝트 성과) (5점)
29
+
30
+ ## 합격 기준
31
+ - 일반적으로 70점 이상 합격권
32
+ - 운영사별 차이 있음 (벤처캐피탈이 추천 운영)
33
+ - 대면 평가(PT) 통과 필수
34
+
35
+ ## 핵심 포인트
36
+ - "왜 지금, 왜 우리 팀인가" 명확해야 함
37
+ - 기술 = 문제 해결력 (기술 자체가 아닌 기술이 만드는 가치)
38
+ - 시장 규모는 TAM-SAM-SOM 프레임워크
39
+ - 매출/PoC 있으면 압도적 유리
40
+ - 520x 같은 정량 수치 = 강력한 차별화 포인트
@@ -0,0 +1,323 @@
1
+ #!/usr/bin/env bash
2
+ # Raon OS — Startup Companion CLI
3
+ # @yeomyeonggeori/raon-os
4
+ #
5
+ # Usage: raon.sh <module> <command> [options]
6
+ # Modules: biz-plan, gov-funding, investor-match
7
+ #
8
+ # Environment:
9
+ # RAON_API_URL — K-Startup AI API base URL (optional)
10
+ # RAON_API_KEY — API key (optional)
11
+ # Falls back to local LLM + RAG when API is not configured.
12
+
13
+ set -euo pipefail
14
+
15
+ SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
16
+ BASE_DIR="$(dirname "$SCRIPT_DIR")"
17
+ MODULE="${1:-help}"
18
+ COMMAND="${2:-}"
19
+ shift 2 2>/dev/null || true
20
+
21
+ # --- Config ---
22
+ API_URL="${RAON_API_URL:-}"
23
+ API_KEY="${RAON_API_KEY:-}"
24
+
25
+ # --- Colors ---
26
+ RED='\033[0;31m'
27
+ GREEN='\033[0;32m'
28
+ YELLOW='\033[1;33m'
29
+ BLUE='\033[0;34m'
30
+ NC='\033[0m'
31
+
32
+ info() { echo -e "${BLUE}[raon]${NC} $*"; }
33
+ ok() { echo -e "${GREEN}[raon]${NC} $*"; }
34
+ warn() { echo -e "${YELLOW}[raon]${NC} $*"; }
35
+ err() { echo -e "${RED}[raon]${NC} $*" >&2; }
36
+
37
+ # --- Helpers ---
38
+ check_file() {
39
+ local file="$1"
40
+ if [[ ! -f "$file" ]]; then
41
+ err "파일을 찾을 수 없습니다: $file"
42
+ exit 1
43
+ fi
44
+ }
45
+
46
+ extract_text_from_pdf() {
47
+ local file="$1"
48
+ if command -v pdftotext &>/dev/null; then
49
+ pdftotext "$file" -
50
+ elif command -v python3 &>/dev/null; then
51
+ python3 -c "
52
+ import sys
53
+ try:
54
+ import PyPDF2
55
+ reader = PyPDF2.PdfReader('$file')
56
+ for page in reader.pages:
57
+ print(page.extract_text() or '')
58
+ except ImportError:
59
+ try:
60
+ import pdfplumber
61
+ with pdfplumber.open('$file') as pdf:
62
+ for page in pdf.pages:
63
+ print(page.extract_text() or '')
64
+ except ImportError:
65
+ print('ERROR: pdftotext, PyPDF2, or pdfplumber required', file=sys.stderr)
66
+ sys.exit(1)
67
+ "
68
+ else
69
+ err "PDF 파싱 도구가 필요합니다: pdftotext, PyPDF2, or pdfplumber"
70
+ exit 1
71
+ fi
72
+ }
73
+
74
+ call_api() {
75
+ local endpoint="$1"
76
+ local data="$2"
77
+
78
+ if [[ -n "$API_URL" && -n "$API_KEY" ]]; then
79
+ curl -s -X POST "${API_URL}${endpoint}" \
80
+ -H "Authorization: Bearer ${API_KEY}" \
81
+ -H "Content-Type: application/json" \
82
+ -d "$data"
83
+ else
84
+ echo "__LOCAL_MODE__"
85
+ fi
86
+ }
87
+
88
+ # --- biz-plan module ---
89
+ bizplan_evaluate() {
90
+ local file="" text=""
91
+
92
+ while [[ $# -gt 0 ]]; do
93
+ case "$1" in
94
+ --file) file="$2"; shift 2 ;;
95
+ --text) text="$2"; shift 2 ;;
96
+ *) shift ;;
97
+ esac
98
+ done
99
+
100
+ if [[ -n "$file" ]]; then
101
+ check_file "$file"
102
+ info "사업계획서 분석 중: $file"
103
+ text=$(extract_text_from_pdf "$file")
104
+ fi
105
+
106
+ if [[ -z "$text" ]]; then
107
+ err "사업계획서 파일(--file) 또는 텍스트(--text)를 입력하세요."
108
+ exit 1
109
+ fi
110
+
111
+ local payload
112
+ payload=$(python3 -c "import json; print(json.dumps({'action': 'evaluate', 'text': '''$text'''[:10000]}))" 2>/dev/null || echo '{"action":"evaluate","text":"parse_error"}')
113
+
114
+ local result
115
+ result=$(call_api "/v1/biz-plan/evaluate" "$payload")
116
+
117
+ if [[ "$result" == "__LOCAL_MODE__" ]]; then
118
+ warn "API 미설정 — 로컬 분석 모드 (LLM 연동 필요)"
119
+ echo ""
120
+ echo "=== 사업계획서 평가 요청 ==="
121
+ echo "텍스트 길이: ${#text} 자"
122
+ echo ""
123
+ echo "평가 항목:"
124
+ echo " 1. 문제 정의 및 솔루션 적합성"
125
+ echo " 2. 시장 규모 및 경쟁 분석"
126
+ echo " 3. 비즈니스 모델 타당성"
127
+ echo " 4. 팀 역량"
128
+ echo " 5. 재무 계획"
129
+ echo " 6. 기술 차별성"
130
+ echo ""
131
+ echo "💡 RAON_API_URL, RAON_API_KEY를 설정하면 K-Startup AI 엔진으로 평가합니다."
132
+ echo " 가입: https://k-startup.ai"
133
+ else
134
+ echo "$result"
135
+ fi
136
+ }
137
+
138
+ bizplan_improve() {
139
+ local file=""
140
+
141
+ while [[ $# -gt 0 ]]; do
142
+ case "$1" in
143
+ --file) file="$2"; shift 2 ;;
144
+ *) shift ;;
145
+ esac
146
+ done
147
+
148
+ if [[ -z "$file" ]]; then
149
+ err "--file 옵션을 입력하세요."
150
+ exit 1
151
+ fi
152
+
153
+ check_file "$file"
154
+ info "개선안 생성 중: $file"
155
+
156
+ local text
157
+ text=$(extract_text_from_pdf "$file")
158
+
159
+ local payload
160
+ payload=$(python3 -c "import json; print(json.dumps({'action': 'improve', 'text': '''$text'''[:10000]}))" 2>/dev/null || echo '{"action":"improve","text":"parse_error"}')
161
+
162
+ local result
163
+ result=$(call_api "/v1/biz-plan/improve" "$payload")
164
+
165
+ if [[ "$result" == "__LOCAL_MODE__" ]]; then
166
+ warn "API 미설정 — 로컬 분석 모드"
167
+ echo "💡 RAON_API_URL, RAON_API_KEY를 설정하세요."
168
+ else
169
+ echo "$result"
170
+ fi
171
+ }
172
+
173
+ # --- gov-funding module ---
174
+ govfunding_match() {
175
+ local file="" industry="" stage="" region=""
176
+
177
+ while [[ $# -gt 0 ]]; do
178
+ case "$1" in
179
+ --file) file="$2"; shift 2 ;;
180
+ --industry) industry="$2"; shift 2 ;;
181
+ --stage) stage="$2"; shift 2 ;;
182
+ --region) region="$2"; shift 2 ;;
183
+ *) shift ;;
184
+ esac
185
+ done
186
+
187
+ info "정부 지원사업 매칭 중..."
188
+
189
+ local payload="{\"action\":\"match\""
190
+ [[ -n "$industry" ]] && payload="$payload,\"industry\":\"$industry\""
191
+ [[ -n "$stage" ]] && payload="$payload,\"stage\":\"$stage\""
192
+ [[ -n "$region" ]] && payload="$payload,\"region\":\"$region\""
193
+ payload="$payload}"
194
+
195
+ local result
196
+ result=$(call_api "/v1/gov-funding/match" "$payload")
197
+
198
+ if [[ "$result" == "__LOCAL_MODE__" ]]; then
199
+ warn "API 미설정 — 정적 데이터 기반 매칭"
200
+ echo ""
201
+ echo "=== 추천 정부 지원사업 ==="
202
+ echo ""
203
+ cat "$BASE_DIR/references/gov-programs.md" 2>/dev/null || echo "references/gov-programs.md 파일이 필요합니다."
204
+ echo ""
205
+ echo "💡 API 연동 시 사업계획서 기반 정밀 매칭이 가능합니다."
206
+ else
207
+ echo "$result"
208
+ fi
209
+ }
210
+
211
+ govfunding_info() {
212
+ local program=""
213
+
214
+ while [[ $# -gt 0 ]]; do
215
+ case "$1" in
216
+ --program) program="$2"; shift 2 ;;
217
+ *) shift ;;
218
+ esac
219
+ done
220
+
221
+ if [[ -z "$program" ]]; then
222
+ err "--program 옵션을 입력하세요."
223
+ exit 1
224
+ fi
225
+
226
+ info "$program 정보 조회 중..."
227
+
228
+ local ref_file="$BASE_DIR/references/gov-programs.md"
229
+ if [[ -f "$ref_file" ]]; then
230
+ grep -A 20 -i "$program" "$ref_file" || echo "프로그램을 찾을 수 없습니다: $program"
231
+ else
232
+ err "references/gov-programs.md 파일이 필요합니다."
233
+ fi
234
+ }
235
+
236
+ govfunding_draft() {
237
+ local program="" file=""
238
+
239
+ while [[ $# -gt 0 ]]; do
240
+ case "$1" in
241
+ --program) program="$2"; shift 2 ;;
242
+ --file) file="$2"; shift 2 ;;
243
+ *) shift ;;
244
+ esac
245
+ done
246
+
247
+ if [[ -z "$program" || -z "$file" ]]; then
248
+ err "--program 과 --file 옵션이 필요합니다."
249
+ exit 1
250
+ fi
251
+
252
+ check_file "$file"
253
+ info "$program 지원서 초안 생성 중..."
254
+
255
+ warn "API 미설정 — LLM 연동 필요"
256
+ echo "💡 이 기능은 K-Startup AI API 연동이 필요합니다."
257
+ }
258
+
259
+ # --- investor-match module ---
260
+ investor_match() {
261
+ warn "investor-match는 준비 중입니다 (Factsheet AI 연동 예정)"
262
+ echo "💡 업데이트 확인: https://k-startup.ai"
263
+ }
264
+
265
+ # --- Help ---
266
+ show_help() {
267
+ cat <<EOF
268
+ 🌅 Raon OS — Startup Companion
269
+ @yeomyeonggeori/raon-os
270
+
271
+ Usage: raon.sh <module> <command> [options]
272
+
273
+ Modules:
274
+ biz-plan 사업계획서 평가 및 개선
275
+ evaluate --file <pdf> | --text <text> 평가
276
+ improve --file <pdf> 개선안
277
+
278
+ gov-funding 정부 지원사업 매칭
279
+ match --file <pdf> | --industry/--stage/--region 매칭
280
+ info --program <name> 프로그램 정보
281
+ draft --program <name> --file <pdf> 지원서 초안
282
+
283
+ investor-match 투자자 매칭 (준비 중)
284
+ --stage <stage> --industry <industry> --amount <amount>
285
+
286
+ Environment:
287
+ RAON_API_URL K-Startup AI API URL
288
+ RAON_API_KEY API Key
289
+
290
+ API 미설정 시 로컬 분석 모드로 동작합니다.
291
+ 가입: https://k-startup.ai
292
+ EOF
293
+ }
294
+
295
+ # --- Router ---
296
+ case "$MODULE" in
297
+ biz-plan)
298
+ case "$COMMAND" in
299
+ evaluate) bizplan_evaluate "$@" ;;
300
+ improve) bizplan_improve "$@" ;;
301
+ *) err "Unknown command: biz-plan $COMMAND"; show_help ;;
302
+ esac
303
+ ;;
304
+ gov-funding)
305
+ case "$COMMAND" in
306
+ match) govfunding_match "$@" ;;
307
+ info) govfunding_info "$@" ;;
308
+ draft) govfunding_draft "$@" ;;
309
+ *) err "Unknown command: gov-funding $COMMAND"; show_help ;;
310
+ esac
311
+ ;;
312
+ investor-match)
313
+ investor_match "$@"
314
+ ;;
315
+ help|--help|-h|"")
316
+ show_help
317
+ ;;
318
+ *)
319
+ err "Unknown module: $MODULE"
320
+ show_help
321
+ exit 1
322
+ ;;
323
+ esac