packages feed

claude-1.2.0: claude.cabal

cabal-version:      2.4
name:               claude
version:            1.2.0
synopsis:           Servant bindings to Anthropic's Claude API
description:        This package provides comprehensive and type-safe bindings
                    to Anthropic's Claude API, providing both a Servant interface
                    and non-Servant interface for convenience.
                    .
                    Read the @README@ below for a fully worked usage example.
                    .
                    Otherwise, browse the "Claude.V1" module, which is the
                    intended package entrypoint.
license:            BSD-3-Clause
license-file:       LICENSE
author:             Paul-Arthur Asselin
maintainer:         pa@mercury.com
category:           AI, API, LLM
copyright:          2025
build-type:         Simple
extra-doc-files:    README.md
                  , CHANGELOG.md

source-repository head
  type:             git
  location:         https://github.com/MercuryTechnologies/claude

library
    default-language:   Haskell2010
    hs-source-dirs:     src
    build-depends:      base >=4.15.0.0 && <5
                      , aeson >=2.0 && <2.3
                      , bytestring >=0.10 && <0.13
                      , containers >=0.6 && <0.8
                      , filepath >=1.4 && <1.6
                      , http-api-data >=0.4 && <0.7
                      , http-client >=0.7 && <0.8
                      , http-client-tls >=0.3 && <0.4
                      , http-types >=0.12 && <0.13
                      , servant >=0.19 && <0.21
                      , servant-client >=0.19 && <0.21
                      , text >=1.2 && <2.2
                      , time >=1.9 && <1.15
                      , vector >=0.12 && <0.14
    exposed-modules:    Claude.V1
                        Claude.V1.Error
                        Claude.V1.Messages
                        Claude.V1.Messages.Batches
                        Claude.V1.Tool
    other-modules:      Claude.Prelude
    default-extensions: DataKinds
                      , DeriveAnyClass
                      , DeriveGeneric
                      , DerivingStrategies
                      , DuplicateRecordFields
                      , FlexibleInstances
                      , GeneralizedNewtypeDeriving
                      , OverloadedLists
                      , OverloadedStrings
                      , RecordWildCards
                      , MultiParamTypeClasses
                      , NamedFieldPuns
                      , TypeApplications
                      , TypeOperators
                      , ViewPatterns
    ghc-options:        -Wall -Wno-missing-fields

test-suite tasty
    default-language: Haskell2010
    type:             exitcode-stdio-1.0
    hs-source-dirs:   tasty
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , claude
                    , http-client
                    , http-client-tls
                    , servant-client
                    , tasty
                    , tasty-hunit
                    , text
                    , vector
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
                      , RecordWildCards
    ghc-options:      -Wall -Wno-missing-fields

executable claude-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-example
    main-is:          Main.hs
    build-depends:    base
                    , claude
                    , text
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall

executable claude-stream-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-stream-example
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , claude
                    , text
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall

executable claude-tool-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-tool-example
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , bytestring
                    , claude
                    , text
                    , vector
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall -Wno-missing-fields

executable claude-vision-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-vision-example
    main-is:          Main.hs
    build-depends:    base
                    , base64-bytestring >=1.0 && <1.3
                    , bytestring
                    , claude
                    , text
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall -Wno-missing-fields

executable claude-tool-search-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-tool-search-example
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , claude
                    , text
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall -Wno-missing-fields

executable claude-programmatic-tool-calling-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-programmatic-tool-calling-example
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , claude
                    , text
                    , vector
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall -Wno-missing-fields

executable claude-structured-outputs-example
    default-language: Haskell2010
    hs-source-dirs:   examples/claude-structured-outputs-example
    main-is:          Main.hs
    build-depends:    base
                    , aeson
                    , bytestring
                    , claude
                    , text
    default-extensions: DuplicateRecordFields
                      , NamedFieldPuns
                      , OverloadedLists
                      , OverloadedStrings
    ghc-options:      -Wall -Wno-missing-fields