mirror of
https://github.com/Dvorinka/Devour.git
synced 2026-06-03 20:13:03 +00:00
63 lines
1.4 KiB
Go
63 lines
1.4 KiB
Go
package cmd
|
|
|
|
import (
|
|
"fmt"
|
|
|
|
"github.com/spf13/cobra"
|
|
)
|
|
|
|
var pushCmd = &cobra.Command{
|
|
Use: "push <path>",
|
|
Short: "Push documents to remote MCP server",
|
|
Long: `Push local documents to a remote Devour MCP server.
|
|
|
|
Useful for:
|
|
- Syncing local documentation to a shared server
|
|
- Backing up indexed content
|
|
- Contributing to a team knowledge base
|
|
|
|
Examples:
|
|
devour push ./docs
|
|
devour push ./docs --server http://devour.company.com
|
|
devour push ./docs --server http://localhost:8080 --project my-project`,
|
|
Args: cobra.ExactArgs(1),
|
|
RunE: runPush,
|
|
}
|
|
|
|
var (
|
|
pushServer string
|
|
pushProject string
|
|
)
|
|
|
|
func init() {
|
|
pushCmd.Flags().StringVar(&pushServer, "server", "", "remote Devour server URL")
|
|
pushCmd.Flags().StringVarP(&pushProject, "project", "p", "", "project name on remote server")
|
|
}
|
|
|
|
func runPush(cmd *cobra.Command, args []string) error {
|
|
path := args[0]
|
|
|
|
if pushServer == "" {
|
|
// Try to get from config
|
|
pushServer = "http://localhost:8080"
|
|
}
|
|
|
|
fmt.Printf("📤 Pushing to: %s\n", pushServer)
|
|
fmt.Printf(" Path: %s\n", path)
|
|
if pushProject != "" {
|
|
fmt.Printf(" Project: %s\n", pushProject)
|
|
}
|
|
|
|
// TODO: Implement actual push logic
|
|
// 1. Scan path for documents
|
|
// 2. Connect to remote server
|
|
// 3. Upload documents
|
|
// 4. Wait for indexing confirmation
|
|
|
|
fmt.Println()
|
|
fmt.Println("⚠️ Push functionality not yet implemented")
|
|
fmt.Println(" Remote server support coming soon")
|
|
|
|
return nil
|
|
}
|