sherlock-domains


Namesherlock-domains JSON
Version 0.1.5 PyPI version JSON
download
home_pagehttps://github.com/fewsats/sherlock-python
SummarySherlock Domains Agentic SDK for python
upload_time2025-02-02 04:00:21
maintainerNone
docs_urlNone
authorJordi Montes, Pol Alvarez
requires_python>=3.7
licenseApache Software License 2.0
keywords nbdev jupyter notebook python ai-agents llm domains agentic
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Sherlock Domains Python SDK


<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->

### Installation

Install latest from the GitHub
[repository](https://github.com/Fewsats/sherlock-python):

``` sh
$ pip install git+https://github.com/Fewsats/sherlock-python.git
```

``` sh
$ pip install sherlock-domains
```

## How to use

Create a Sherlock instance with a private key for the agent to use. If
no key is provided, a new one will be generated and saved to the default
config file.

``` python
s = Sherlock()
s
```

    Sherlock(pubkey=90ba884688884277e49080712f386eebc88806efa8345ca937f75fe80950156d)

You can search for a domain and request to purchase it. Purchasing a
domain requires contact information as mandated by ICANN.

``` python
sr = s.search("trakwiska.com")
# Don't print the whole lists
sr['available'] = sr['available'][:1]
sr['unavailable'] = sr['unavailable'][:1]
sr
```

    {'id': '812125a5-1358-4eaf-8589-c50248e3d4af',
     'created_at': '2025-01-14T03:36:38.352Z',
     'available': [{'name': 'trakwiska.com',
       'tld': 'com',
       'tags': [],
       'price': 1105,
       'currency': 'USD',
       'available': True}],
     'unavailable': []}

Contact information is needed for registering a new domain with the
ICANN.

``` python
c = Contact(**{
    "first_name": "Test",
    "last_name": "User",
    "email": "test@example.com",
    "address": "123 Test St",
    "city": "Test City",
    "state": "CA",
    "country": "US",
    "postal_code": "12345",
})

s.set_contact_information(
    cfn=c.first_name,
    cln=c.last_name,
    cem=c.email,
    cadd=c.address,
    cct=c.city,
    cst=c.state,
    cpc=c.postal_code,
    ccn=c.country
)
```

    {'message': 'Contact information updated successfully'}

Finalizing a purchase involves a payment. Sherlock Domains currently
supports two payment methods: Credit Card (`credit_card`) and the
Lightning Netowrk (`lightning`). By default the credit card method is
used. In order to complete the payment: - `credit_card` returns a
checkout URL. - `lightning` returns a lightning invoice.

``` python
s.request_payment_details(sr['id'], "trakwiska.com")
```

    {'payment_method': {'checkout_url': 'https://checkout.stripe.com/c/pay/cs_live_a1uu7dX1qtgk5YH3BdJewKlRPCujUfcW0KdBWr8WLwXCuctBQkWMdE2UQx#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl',
      'lightning_invoice': None},
     'expires_at': '2025-01-14T04:06:39.531Z'}

You can now use the checkout URL to complete the purchase and the domain
will be registered to your agent.

You can view the domains you own with:

``` python
s.domains()
```

    [{'id': 'd9b2cc30-c15d-44b9-9d39-5d33da504484',
      'domain_name': 'h402.org',
      'created_at': '2024-12-28T18:58:49.899Z',
      'expires_at': '2024-12-31T18:58:42Z',
      'auto_renew': False,
      'locked': True,
      'private': True,
      'nameservers': [],
      'status': 'active'}]

Below is a list of all the tools that the client offers to manage the
domains and purchases.

``` python
s.as_tools().map(lambda t: t.__name__)
```

    (#10) ['_me','_set_contact_information','_get_contact_information','_search','_request_payment_details','_domains','_dns_records','_create_dns_record','_update_dns_record','_delete_dns_record']

## AI agents

We will show how to enable your AI assistant to handle payments using
[Claudette](https://claudette.answer.ai), Answer.ai convenient wrapper
for Claude. You’ll need to export your `ANTHROPIC_API_KEY`.

``` python
from claudette import Chat, models
```

``` python
model = models[1]; model
```

    'claude-3-5-sonnet-20240620'

Create a Sherlock instance with a public & private key for the agent to
use.

Sherlock supports returning all the tools with `s.as_tools()`.

``` python
sp = 'You are a helpful assistant that has access to a domain purchase API.'
chat = Chat(model, sp=sp, tools=s.as_tools())

pr = f"Search if domain 'the-favourite-game.com' is available? If it is request a purchase and process the payment using credit card method."
r = chat.toolloop(pr, trace_func=print)
r
```

    Message(id='msg_014pq4tF62joNFyY7HK6a197', content=[TextBlock(text="Certainly! I'll search for the domain 'the-favourite-game.com' and if it's available, I'll proceed with the purchase request using the credit card payment method. Let's start with the search.", type='text'), ToolUseBlock(id='toolu_01P6nMob3NuohiyNYDvYjmde', input={'q': 'the-favourite-game.com'}, name='_search', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2409; Out: 104; Cache create: 0; Cache read: 0; Total: 2513)
    Message(id='msg_01NcViW2skMwxQFMFMKr3g5n', content=[TextBlock(text="Great news! The domain 'the-favourite-game.com' is available. The search results show that it can be purchased for 1105 cents USD, which is equivalent to $11.05.\n\nNow that we know the domain is available, let's proceed with the purchase request using the credit card payment method. However, before we can do that, we need to make sure that the contact information is set up. Let's check the current contact information:", type='text'), ToolUseBlock(id='toolu_01MJeNVC2FJa82EbyiLS5ase', input={}, name='_get_contact_information', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2640; Out: 137; Cache create: 0; Cache read: 0; Total: 2777)
    Message(id='msg_01L7iWs1P4xgcBDXWU2MDCPj', content=[TextBlock(text='It looks like the contact information is already set up. Now we can proceed with the purchase request:', type='text'), ToolUseBlock(id='toolu_01V8SvLHszxREU7AEXtLYHJW', input={'sid': 'a63c4bd6-d3c0-4bcd-a381-2ace4ab5dbfe', 'domain': 'the-favourite-game.com', 'payment_method': 'credit_card'}, name='_request_payment_details', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2864; Out: 144; Cache create: 0; Cache read: 0; Total: 3008)
    Message(id='msg_01TodMupqc2jGtgHzKnz4d1J', content=[TextBlock(text="Great! The purchase request has been processed successfully. Here's a summary of what happened:\n\n1. We searched for the domain 'the-favourite-game.com' and found it was available for $11.05.\n2. We confirmed that the contact information was already set up.\n3. We submitted a purchase request for the domain using the credit card payment method.\n\nThe system has provided a checkout URL for you to complete the payment. To finalize the purchase, you'll need to visit this URL:\n\nhttps://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl\n\nPlease note that this checkout URL will expire on 2025-01-14T04:06:49.681Z. Make sure to complete the payment before this time to secure your domain.\n\nIs there anything else you'd like me to help you with regarding this domain purchase or any other domain-related tasks?", type='text')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='end_turn', stop_sequence=None, type='message', usage=In: 3361; Out: 477; Cache create: 0; Cache read: 0; Total: 3838)

Great! The purchase request has been processed successfully. Here’s a
summary of what happened:

1.  We searched for the domain ‘the-favourite-game.com’ and found it was
    available for \$11.05.
2.  We confirmed that the contact information was already set up.
3.  We submitted a purchase request for the domain using the credit card
    payment method.

The system has provided a checkout URL for you to complete the payment.
To finalize the purchase, you’ll need to visit this URL:

https://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl

Please note that this checkout URL will expire on
2025-01-14T04:06:49.681Z. Make sure to complete the payment before this
time to secure your domain.

Is there anything else you’d like me to help you with regarding this
domain purchase or any other domain-related tasks?

<details>

- id: `msg_01TodMupqc2jGtgHzKnz4d1J`
- content:
  `[{'text': "Great! The purchase request has been processed successfully. Here's a summary of what happened:\n\n1. We searched for the domain 'the-favourite-game.com' and found it was available for $11.05.\n2. We confirmed that the contact information was already set up.\n3. We submitted a purchase request for the domain using the credit card payment method.\n\nThe system has provided a checkout URL for you to complete the payment. To finalize the purchase, you'll need to visit this URL:\n\nhttps://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl\n\nPlease note that this checkout URL will expire on 2025-01-14T04:06:49.681Z. Make sure to complete the payment before this time to secure your domain.\n\nIs there anything else you'd like me to help you with regarding this domain purchase or any other domain-related tasks?", 'type': 'text'}]`
- model: `claude-3-5-sonnet-20240620`
- role: `assistant`
- stop_reason: `end_turn`
- stop_sequence: `None`
- type: `message`
- usage:
  `{'cache_creation_input_tokens': 0, 'cache_read_input_tokens': 0, 'input_tokens': 3361, 'output_tokens': 477}`

</details>

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/fewsats/sherlock-python",
    "name": "sherlock-domains",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": null,
    "keywords": "nbdev jupyter notebook python ai-agents llm domains agentic",
    "author": "Jordi Montes, Pol Alvarez",
    "author_email": "jordi@fewsats.com, pol@fewsats.com",
    "download_url": "https://files.pythonhosted.org/packages/76/a9/4e7cc07dde829d05055b0801d159de62e603299146bafee51bff3502621f/sherlock_domains-0.1.5.tar.gz",
    "platform": null,
    "description": "# Sherlock Domains Python SDK\n\n\n<!-- WARNING: THIS FILE WAS AUTOGENERATED! DO NOT EDIT! -->\n\n### Installation\n\nInstall latest from the GitHub\n[repository](https://github.com/Fewsats/sherlock-python):\n\n``` sh\n$ pip install git+https://github.com/Fewsats/sherlock-python.git\n```\n\n``` sh\n$ pip install sherlock-domains\n```\n\n## How to use\n\nCreate a Sherlock instance with a private key for the agent to use. If\nno key is provided, a new one will be generated and saved to the default\nconfig file.\n\n``` python\ns = Sherlock()\ns\n```\n\n    Sherlock(pubkey=90ba884688884277e49080712f386eebc88806efa8345ca937f75fe80950156d)\n\nYou can search for a domain and request to purchase it. Purchasing a\ndomain requires contact information as mandated by ICANN.\n\n``` python\nsr = s.search(\"trakwiska.com\")\n# Don't print the whole lists\nsr['available'] = sr['available'][:1]\nsr['unavailable'] = sr['unavailable'][:1]\nsr\n```\n\n    {'id': '812125a5-1358-4eaf-8589-c50248e3d4af',\n     'created_at': '2025-01-14T03:36:38.352Z',\n     'available': [{'name': 'trakwiska.com',\n       'tld': 'com',\n       'tags': [],\n       'price': 1105,\n       'currency': 'USD',\n       'available': True}],\n     'unavailable': []}\n\nContact information is needed for registering a new domain with the\nICANN.\n\n``` python\nc = Contact(**{\n    \"first_name\": \"Test\",\n    \"last_name\": \"User\",\n    \"email\": \"test@example.com\",\n    \"address\": \"123 Test St\",\n    \"city\": \"Test City\",\n    \"state\": \"CA\",\n    \"country\": \"US\",\n    \"postal_code\": \"12345\",\n})\n\ns.set_contact_information(\n    cfn=c.first_name,\n    cln=c.last_name,\n    cem=c.email,\n    cadd=c.address,\n    cct=c.city,\n    cst=c.state,\n    cpc=c.postal_code,\n    ccn=c.country\n)\n```\n\n    {'message': 'Contact information updated successfully'}\n\nFinalizing a purchase involves a payment. Sherlock Domains currently\nsupports two payment methods: Credit Card (`credit_card`) and the\nLightning Netowrk (`lightning`). By default the credit card method is\nused. In order to complete the payment: - `credit_card` returns a\ncheckout URL. - `lightning` returns a lightning invoice.\n\n``` python\ns.request_payment_details(sr['id'], \"trakwiska.com\")\n```\n\n    {'payment_method': {'checkout_url': 'https://checkout.stripe.com/c/pay/cs_live_a1uu7dX1qtgk5YH3BdJewKlRPCujUfcW0KdBWr8WLwXCuctBQkWMdE2UQx#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl',\n      'lightning_invoice': None},\n     'expires_at': '2025-01-14T04:06:39.531Z'}\n\nYou can now use the checkout URL to complete the purchase and the domain\nwill be registered to your agent.\n\nYou can view the domains you own with:\n\n``` python\ns.domains()\n```\n\n    [{'id': 'd9b2cc30-c15d-44b9-9d39-5d33da504484',\n      'domain_name': 'h402.org',\n      'created_at': '2024-12-28T18:58:49.899Z',\n      'expires_at': '2024-12-31T18:58:42Z',\n      'auto_renew': False,\n      'locked': True,\n      'private': True,\n      'nameservers': [],\n      'status': 'active'}]\n\nBelow is a list of all the tools that the client offers to manage the\ndomains and purchases.\n\n``` python\ns.as_tools().map(lambda t: t.__name__)\n```\n\n    (#10) ['_me','_set_contact_information','_get_contact_information','_search','_request_payment_details','_domains','_dns_records','_create_dns_record','_update_dns_record','_delete_dns_record']\n\n## AI agents\n\nWe will show how to enable your AI assistant to handle payments using\n[Claudette](https://claudette.answer.ai), Answer.ai convenient wrapper\nfor Claude. You\u2019ll need to export your `ANTHROPIC_API_KEY`.\n\n``` python\nfrom claudette import Chat, models\n```\n\n``` python\nmodel = models[1]; model\n```\n\n    'claude-3-5-sonnet-20240620'\n\nCreate a Sherlock instance with a public & private key for the agent to\nuse.\n\nSherlock supports returning all the tools with `s.as_tools()`.\n\n``` python\nsp = 'You are a helpful assistant that has access to a domain purchase API.'\nchat = Chat(model, sp=sp, tools=s.as_tools())\n\npr = f\"Search if domain 'the-favourite-game.com' is available? If it is request a purchase and process the payment using credit card method.\"\nr = chat.toolloop(pr, trace_func=print)\nr\n```\n\n    Message(id='msg_014pq4tF62joNFyY7HK6a197', content=[TextBlock(text=\"Certainly! I'll search for the domain 'the-favourite-game.com' and if it's available, I'll proceed with the purchase request using the credit card payment method. Let's start with the search.\", type='text'), ToolUseBlock(id='toolu_01P6nMob3NuohiyNYDvYjmde', input={'q': 'the-favourite-game.com'}, name='_search', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2409; Out: 104; Cache create: 0; Cache read: 0; Total: 2513)\n    Message(id='msg_01NcViW2skMwxQFMFMKr3g5n', content=[TextBlock(text=\"Great news! The domain 'the-favourite-game.com' is available. The search results show that it can be purchased for 1105 cents USD, which is equivalent to $11.05.\\n\\nNow that we know the domain is available, let's proceed with the purchase request using the credit card payment method. However, before we can do that, we need to make sure that the contact information is set up. Let's check the current contact information:\", type='text'), ToolUseBlock(id='toolu_01MJeNVC2FJa82EbyiLS5ase', input={}, name='_get_contact_information', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2640; Out: 137; Cache create: 0; Cache read: 0; Total: 2777)\n    Message(id='msg_01L7iWs1P4xgcBDXWU2MDCPj', content=[TextBlock(text='It looks like the contact information is already set up. Now we can proceed with the purchase request:', type='text'), ToolUseBlock(id='toolu_01V8SvLHszxREU7AEXtLYHJW', input={'sid': 'a63c4bd6-d3c0-4bcd-a381-2ace4ab5dbfe', 'domain': 'the-favourite-game.com', 'payment_method': 'credit_card'}, name='_request_payment_details', type='tool_use')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='tool_use', stop_sequence=None, type='message', usage=In: 2864; Out: 144; Cache create: 0; Cache read: 0; Total: 3008)\n    Message(id='msg_01TodMupqc2jGtgHzKnz4d1J', content=[TextBlock(text=\"Great! The purchase request has been processed successfully. Here's a summary of what happened:\\n\\n1. We searched for the domain 'the-favourite-game.com' and found it was available for $11.05.\\n2. We confirmed that the contact information was already set up.\\n3. We submitted a purchase request for the domain using the credit card payment method.\\n\\nThe system has provided a checkout URL for you to complete the payment. To finalize the purchase, you'll need to visit this URL:\\n\\nhttps://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl\\n\\nPlease note that this checkout URL will expire on 2025-01-14T04:06:49.681Z. Make sure to complete the payment before this time to secure your domain.\\n\\nIs there anything else you'd like me to help you with regarding this domain purchase or any other domain-related tasks?\", type='text')], model='claude-3-5-sonnet-20240620', role='assistant', stop_reason='end_turn', stop_sequence=None, type='message', usage=In: 3361; Out: 477; Cache create: 0; Cache read: 0; Total: 3838)\n\nGreat! The purchase request has been processed successfully. Here\u2019s a\nsummary of what happened:\n\n1.  We searched for the domain \u2018the-favourite-game.com\u2019 and found it was\n    available for \\$11.05.\n2.  We confirmed that the contact information was already set up.\n3.  We submitted a purchase request for the domain using the credit card\n    payment method.\n\nThe system has provided a checkout URL for you to complete the payment.\nTo finalize the purchase, you\u2019ll need to visit this URL:\n\nhttps://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl\n\nPlease note that this checkout URL will expire on\n2025-01-14T04:06:49.681Z. Make sure to complete the payment before this\ntime to secure your domain.\n\nIs there anything else you\u2019d like me to help you with regarding this\ndomain purchase or any other domain-related tasks?\n\n<details>\n\n- id: `msg_01TodMupqc2jGtgHzKnz4d1J`\n- content:\n  `[{'text': \"Great! The purchase request has been processed successfully. Here's a summary of what happened:\\n\\n1. We searched for the domain 'the-favourite-game.com' and found it was available for $11.05.\\n2. We confirmed that the contact information was already set up.\\n3. We submitted a purchase request for the domain using the credit card payment method.\\n\\nThe system has provided a checkout URL for you to complete the payment. To finalize the purchase, you'll need to visit this URL:\\n\\nhttps://checkout.stripe.com/c/pay/cs_live_a1o69y0arBV5CHaLPQ4lusmVfLqGJDjAkyhNeTVT89Ri3LBbjQQjE3iuT8#fidkdWxOYHwnPyd1blppbHNgWjA0S3VzXDdBbTFNVlJzfDVRQVQ2dVdBTnJTSH1QMGs2dHRsanJMbkY0PTxKbUtRaWowT2NwMGM8RlVBbGRqSWo3UFYwcVdqR3F9N2BtM2ZTPXc1Z3dQXGc2NTVPYVVSQkM8bycpJ2N3amhWYHdzYHcnP3F3cGApJ2lkfGpwcVF8dWAnPyd2bGtiaWBabHFgaCcpJ2BrZGdpYFVpZGZgbWppYWB3dic%2FcXdwYHgl\\n\\nPlease note that this checkout URL will expire on 2025-01-14T04:06:49.681Z. Make sure to complete the payment before this time to secure your domain.\\n\\nIs there anything else you'd like me to help you with regarding this domain purchase or any other domain-related tasks?\", 'type': 'text'}]`\n- model: `claude-3-5-sonnet-20240620`\n- role: `assistant`\n- stop_reason: `end_turn`\n- stop_sequence: `None`\n- type: `message`\n- usage:\n  `{'cache_creation_input_tokens': 0, 'cache_read_input_tokens': 0, 'input_tokens': 3361, 'output_tokens': 477}`\n\n</details>\n",
    "bugtrack_url": null,
    "license": "Apache Software License 2.0",
    "summary": "Sherlock Domains Agentic SDK for python",
    "version": "0.1.5",
    "project_urls": {
        "Homepage": "https://github.com/fewsats/sherlock-python"
    },
    "split_keywords": [
        "nbdev",
        "jupyter",
        "notebook",
        "python",
        "ai-agents",
        "llm",
        "domains",
        "agentic"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "c8742d2cb74022a43f934d0c44157a31c48b047cd08fcb0f57ac3db09faa111c",
                "md5": "4a7c3e533bd68556683e16eb2e4e1ee7",
                "sha256": "6bf3078f0459fadcc57eca965368ba185f68229eabeeaf2d64aebc36fc46ceff"
            },
            "downloads": -1,
            "filename": "sherlock_domains-0.1.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "4a7c3e533bd68556683e16eb2e4e1ee7",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 17347,
            "upload_time": "2025-02-02T04:00:19",
            "upload_time_iso_8601": "2025-02-02T04:00:19.882157Z",
            "url": "https://files.pythonhosted.org/packages/c8/74/2d2cb74022a43f934d0c44157a31c48b047cd08fcb0f57ac3db09faa111c/sherlock_domains-0.1.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "76a94e7cc07dde829d05055b0801d159de62e603299146bafee51bff3502621f",
                "md5": "9ddb7b3f845c7e7237d92a2d1ad7a732",
                "sha256": "a6f2b003e13fb1aa5f6be1f3a0ffb9d9eab92809b57a4a6b2e56b7bff605be48"
            },
            "downloads": -1,
            "filename": "sherlock_domains-0.1.5.tar.gz",
            "has_sig": false,
            "md5_digest": "9ddb7b3f845c7e7237d92a2d1ad7a732",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 20605,
            "upload_time": "2025-02-02T04:00:21",
            "upload_time_iso_8601": "2025-02-02T04:00:21.791077Z",
            "url": "https://files.pythonhosted.org/packages/76/a9/4e7cc07dde829d05055b0801d159de62e603299146bafee51bff3502621f/sherlock_domains-0.1.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-02-02 04:00:21",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "fewsats",
    "github_project": "sherlock-python",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "sherlock-domains"
}
        
Elapsed time: 0.48589s