Initial commit
This commit is contained in:
91
scripts/README.md
Normal file
91
scripts/README.md
Normal file
@@ -0,0 +1,91 @@
|
||||
# Google Gemini File Search CLI Scripts
|
||||
|
||||
This directory contains CLI tools for managing Google Gemini File Search stores and documents.
|
||||
|
||||
## Available Scripts
|
||||
|
||||
### ✅ create-store.ts
|
||||
Create a new file search store.
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
ts-node create-store.ts --name "My Knowledge Base" --project "customer-support" --environment "production"
|
||||
```
|
||||
|
||||
**Status:** Complete
|
||||
|
||||
### 🚧 upload-batch.ts (TO BE IMPLEMENTED)
|
||||
Batch upload documents to a file search store with progress tracking.
|
||||
|
||||
**Planned Features:**
|
||||
- Concurrent uploads with configurable batch size
|
||||
- Progress bar with ETA
|
||||
- Automatic chunking configuration per file type
|
||||
- Metadata extraction from file path/name
|
||||
- Cost estimation before upload
|
||||
- Operation polling until indexing complete
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
ts-node upload-batch.ts --store "fileSearchStores/abc123" --directory "./docs" --concurrent 5
|
||||
```
|
||||
|
||||
### 🚧 query-store.ts (TO BE IMPLEMENTED)
|
||||
Interactive query tool with citation display.
|
||||
|
||||
**Planned Features:**
|
||||
- Interactive REPL for queries
|
||||
- Citation rendering with source links
|
||||
- Metadata filtering options
|
||||
- Model selection (Flash vs Pro)
|
||||
- Export query results
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
ts-node query-store.ts --store "fileSearchStores/abc123"
|
||||
```
|
||||
|
||||
### 🚧 cleanup.ts (TO BE IMPLEMENTED)
|
||||
Delete stores and documents (with safety prompts).
|
||||
|
||||
**Planned Features:**
|
||||
- List all stores with document counts
|
||||
- Delete specific store or all stores
|
||||
- Force delete confirmation prompts
|
||||
- Dry-run mode
|
||||
|
||||
**Usage:**
|
||||
```bash
|
||||
ts-node cleanup.ts --store "fileSearchStores/abc123" --force
|
||||
ts-node cleanup.ts --all --dry-run
|
||||
```
|
||||
|
||||
## Prerequisites
|
||||
|
||||
```bash
|
||||
# Install dependencies
|
||||
npm install @google/genai
|
||||
|
||||
# Set API key
|
||||
export GOOGLE_API_KEY="your-api-key-here"
|
||||
```
|
||||
|
||||
## Development Status
|
||||
|
||||
**Completed:** 1/4 scripts (25%)
|
||||
|
||||
**Next Steps:**
|
||||
1. Implement upload-batch.ts
|
||||
2. Implement query-store.ts
|
||||
3. Implement cleanup.ts
|
||||
4. Add package.json with dependencies and scripts
|
||||
5. Test all scripts end-to-end
|
||||
|
||||
## Notes
|
||||
|
||||
These scripts demonstrate best practices from SKILL.md:
|
||||
- Operation polling until done: true
|
||||
- Storage quota calculation (3x multiplier)
|
||||
- Recommended chunking configurations
|
||||
- Metadata schema patterns
|
||||
- Force delete for non-empty stores
|
||||
Reference in New Issue
Block a user