@nine-lab/nine-connector 0.1.11 → 0.1.12

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.
Files changed (2) hide show
  1. package/README.md +34 -25
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -3,17 +3,17 @@ cat <<EOF > README.md
3
3
 
4
4
  자연어 기반 SQL 생성 엔진(NineQuery)과 데이터베이스 사이를 연결하는 **AI 전용 DB 커넥터 서비스**입니다.
5
5
 
6
- 사용자의 질문을 분석하여 최적의 테이블을 필터링하고, 안전한 SQL을 생성하여 즉시 실행 결과를 반환하는 통합 환경을 제공합니다.
6
+ 데이터베이스의 구조(Schema)를 분석하여 AI가 최적의 쿼리를 생성할 있도록 브릿지 역할을 수행하며, 보안이 검증된 환경에서 데이터를 안전하게 반환합니다.
7
7
 
8
8
  ---
9
9
 
10
10
  ## 🌟 주요 기능
11
11
 
12
- * **자동 초기화**: \`nine-connector init\` 명령으로 \`.env\` 설정과 AI 프롬프트를 자동 구축합니다.
13
- * **Multi-DB 지원**: MySQL, PostgreSQL, MariaDB, Oracle 등 다양한 DB 환경에 대응합니다.
12
+ * **자동 초기화**: \`nine-connector init\` 명령으로 \`.env\` 설정과 AI 프롬프트 템플릿을 즉시 구축합니다.
13
+ * **Multi-DB 지원**: MySQL, PostgreSQL, MariaDB, Oracle 등 다양한 엔터프라이즈 DB 환경에 대응합니다.
14
14
  * **비즈니스 로직 최적화**: 프롬프트 파일 수정을 통해 특정 테이블 조회 금지, 필터링 조건 강제 등 고객사별 맞춤 규칙을 적용할 수 있습니다.
15
- * **보안 가드**: 내부적으로 오직 \`SELECT\` 쿼리만 허용하여 데이터 변조를 차단합니다.
16
- * **데이터 타입 최적화**: \`BigInt\` JSON 변환이 까다로운 타입을 포함하여 모든 데이터를 안전하게 반환합니다.
15
+ * **보안 가드**: 내부적으로 오직 \`SELECT\` 쿼리만 허용하여 데이터 변조 및 유출을 원천 차단합니다.
16
+ * **운영 안정성**: BigInt 직렬화 DB별 결과 포맷 정규화를 통해 데이터 일관성을 보장합니다.
17
17
 
18
18
  ---
19
19
 
@@ -24,37 +24,46 @@ cat <<EOF > README.md
24
24
  npm install -g @nine-lab/nine-connector
25
25
  \`\`\`
26
26
 
27
- ### 2. 프로젝트 초기화
28
- 접속 정보 설정 및 프롬프트 템플릿 생성을 위해 실행합니다.
27
+ ### 2. 프로젝트 초기화 (최초 1회)
28
+ 서버 실행 전 DB 접속 정보 및 프롬프트 환경 구성을 위해 실행합니다.
29
29
  \`\`\`bash
30
30
  nine-connector init
31
31
  \`\`\`
32
32
 
33
- ### 3. 서버 실행
34
- \`\`\`bash
35
- nine-connector
36
- \`\`\`
33
+ ### 3. 서버 실행 및 관리 (PM2 권장)
34
+ 서버의 안정적인 기동과 로그 관리를 위해 프로세스 이름을 패키지명과 동일한 **nine-connector**로 관리하는 것을 권장합니다.
35
+
36
+ * **서버 시작**:
37
+ \`\`\`bash
38
+ pm2 start nine-connector --name "nine-connector"
39
+ \`\`\`
40
+ * **상태 확인**:
41
+ \`\`\`bash
42
+ pm2 status
43
+ \`\`\`
44
+ * **로그 확인**:
45
+ \`\`\`bash
46
+ pm2 logs nine-connector
47
+ \`\`\`
48
+ * **서버 중지/재시작**:
49
+ \`\`\`bash
50
+ pm2 stop nine-connector
51
+ pm2 restart nine-connector
52
+ \`\`\`
37
53
 
38
54
  ---
39
55
 
40
- ## 🔌 API 명세 (Public API)
41
-
42
- ### 1. 자연어 질의 처리 (Main)
43
- 사용자의 질문을 받아 **테이블 선정 -> SQL 생성 -> 데이터 조회**를 한 번에 수행합니다.
44
- * **Endpoint:** \`POST /api/ask\`
45
- * **Body:** \`{ "question": "올해 매출이 가장 높은 카테고리 알려줘" }\`
46
- * **Response:** SQL문, AI의 설명, 그리고 조회된 결과 데이터를 포함합니다.
56
+ ## 📂 프로젝트 구조 커스터마이징
47
57
 
48
- ---
58
+ 기본적으로 \`nine-query\` 컴포넌트와 연동되어 동작하며, 아래 파일들을 통해 세부 동작을 제어할 수 있습니다.
49
59
 
50
- ## 📂 프로젝트 구조커스터마이징
51
- * **.env**: DB 접속 AI 모델 설정값
52
- * **prompts/table-filter.md**: 질문에 필요한 테이블을 고르는 AI 로직
53
- * **prompts/query-generator.md**: 실제 SQL생성하는 AI 페르소나
54
- * **Tip**: 파일 내 \`[고객사 전용 비즈니스 로직 및 보안 규칙]\` 섹션에 "특정 테이블 조회 금지"나 "기본 정렬 기준" 등을 작성하여 AI의 동작을 제어할 수 있습니다.
60
+ * **.env**: DB 접속 정보 AI 모델(Gemini) 설정값
61
+ * **prompts/table-filter.md**: 질문에 적합한 테이블을 찾아내는 AI 판단 로직
62
+ * **prompts/query-generator.md**: 실제 SQL을 생성하는 AI 페르소나 및 규칙
63
+ * **💡 Tip**: 파일의 \`[고객사 전용 비즈니스 로직 및 보안 규칙]\` 섹션에 "특정 민감 테이블 조회 금지"나 "기본 정렬/필터링 기준"명시하여 AI 답변을 통제할 수 있습니다.
55
64
 
56
65
  ---
57
66
 
58
67
  ## 📄 라이선스
59
68
  MIT © **nine-lab**
60
- EOF
69
+ EOF
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@nine-lab/nine-connector",
3
- "version": "0.1.11",
3
+ "version": "0.1.12",
4
4
  "description": "NineQuery AI Connector for Database",
5
5
  "main": "src/index.js",
6
6
  "type": "module",